diff options
author | Thomas Dinges <blender@dingto.org> | 2013-06-16 03:47:09 +0400 |
---|---|---|
committer | Thomas Dinges <blender@dingto.org> | 2013-06-16 03:47:09 +0400 |
commit | 9e16c5a9e429e0d00801a4dd6ee71a8fbf6691f0 (patch) | |
tree | 7db98e3f90bc2a803cc9750d8982d6d1284a9aee /intern/cycles/kernel/svm/svm.h | |
parent | d523d27e621f92c2fd9cb53f9dbbb62750bacc2c (diff) |
Cycles / Blackbody node:
* First (brute force) implementation for SVM. This works and delivers the same result as OSL, but it's slow.
* Code inside svm_blackbody.h inspired by a patch by Philipp Oeser (#35698), thanks.
Ideas:
* Use a lookup table to perform the calculations on render/ level.
* Implement it as a RNA property only, and do the calculation like Sun/Sky precompute.
Diffstat (limited to 'intern/cycles/kernel/svm/svm.h')
-rw-r--r-- | intern/cycles/kernel/svm/svm.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/intern/cycles/kernel/svm/svm.h b/intern/cycles/kernel/svm/svm.h index 7f0bb3163a1..e08e41e78e5 100644 --- a/intern/cycles/kernel/svm/svm.h +++ b/intern/cycles/kernel/svm/svm.h @@ -146,6 +146,7 @@ CCL_NAMESPACE_END #include "svm_attribute.h" #include "svm_gradient.h" +#include "svm_blackbody.h" #include "svm_closure.h" #include "svm_noisetex.h" #include "svm_convert.h" @@ -366,6 +367,9 @@ __device_noinline void svm_eval_nodes(KernelGlobals *kg, ShaderData *sd, ShaderT case NODE_WAVELENGTH: svm_node_wavelength(sd, stack, node.y, node.z); break; + case NODE_BLACKBODY: + svm_node_blackbody(kg, sd, stack, node.y, node.z); + break; case NODE_SET_DISPLACEMENT: svm_node_set_displacement(sd, stack, node.y); break; |