diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2016-05-23 15:09:27 +0300 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2016-05-23 15:09:27 +0300 |
commit | 2aa4b6045a1d249025bb8eb2f19fcc72d0739341 (patch) | |
tree | 913ca3e5207daa420febb572793011cbc30ed955 /intern/cycles/kernel/svm/svm_types.h | |
parent | 6894bb055554b8db0af1fcfdec6e3fa5f088e777 (diff) |
Cycles: Fix wrong closure counter in feature adaptive kernel
Some closures were missing from calculation, leading to an array
under-allocation, presumable causing memory corruption issues with
emission shaders on OpenCL and was causing issues with Volume 3D
textures with CUDA.
The issue was identified by Thomas Dinges, the patch is different
from the original D2006. See the brief discussion there. Current
approach is similar (or the same) as Brecht suggested.
Diffstat (limited to 'intern/cycles/kernel/svm/svm_types.h')
-rw-r--r-- | intern/cycles/kernel/svm/svm_types.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/intern/cycles/kernel/svm/svm_types.h b/intern/cycles/kernel/svm/svm_types.h index 8c69c589ebb..be87e35326e 100644 --- a/intern/cycles/kernel/svm/svm_types.h +++ b/intern/cycles/kernel/svm/svm_types.h @@ -370,6 +370,9 @@ typedef enum ShaderType { /* Closure */ typedef enum ClosureType { + /* Special type, flags generic node as a non-BSDF. */ + CLOSURE_NONE_ID, + CLOSURE_BSDF_ID, /* Diffuse */ |