Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/intern
diff options
context:
space:
mode:
authorBrecht Van Lommel <brechtvanlommel@gmail.com>2014-02-28 00:09:27 +0400
committerBrecht Van Lommel <brechtvanlommel@gmail.com>2014-02-28 00:15:23 +0400
commit4d1159627cf1536b36389b0db23bf3d1d8ce206f (patch)
treec87073c174f6dded7a082030d2d269c42a910753 /intern
parent74ae900c676b5ad7d54857734a16a8527883844c (diff)
Fix cycles wrong volume scatter value in light path node.
Thanks to Thomas for spotting this. Differential Revision: https://developer.blender.org/D370
Diffstat (limited to 'intern')
-rw-r--r--intern/cycles/kernel/kernel_types.h6
-rw-r--r--intern/cycles/render/osl.cpp3
2 files changed, 5 insertions, 4 deletions
diff --git a/intern/cycles/kernel/kernel_types.h b/intern/cycles/kernel/kernel_types.h
index 60611d798cb..fc3e2730141 100644
--- a/intern/cycles/kernel/kernel_types.h
+++ b/intern/cycles/kernel/kernel_types.h
@@ -220,7 +220,6 @@ enum PathRayFlag {
PATH_RAY_GLOSSY = 16,
PATH_RAY_SINGULAR = 32,
PATH_RAY_TRANSPARENT = 64,
- PATH_RAY_VOLUME_SCATTER = 128,
PATH_RAY_SHADOW_OPAQUE = 128,
PATH_RAY_SHADOW_TRANSPARENT = 256,
@@ -228,6 +227,7 @@ enum PathRayFlag {
PATH_RAY_CURVE = 512, /* visibility flag to define curve segments*/
+ /* note that these can use maximum 12 bits, the other are for layers */
PATH_RAY_ALL_VISIBILITY = (1|2|4|8|16|32|64|128|256|512),
PATH_RAY_MIS_SKIP = 1024,
@@ -235,9 +235,9 @@ enum PathRayFlag {
PATH_RAY_GLOSSY_ANCESTOR = 4096,
PATH_RAY_BSSRDF_ANCESTOR = 8192,
PATH_RAY_SINGLE_PASS_DONE = 16384,
+ PATH_RAY_VOLUME_SCATTER = 32768,
- /* this gives collisions with localview bits
- * see: blender_util.h, grr - Campbell */
+ /* we need layer member flags to be the 20 upper bits */
PATH_RAY_LAYER_SHIFT = (32-20)
};
diff --git a/intern/cycles/render/osl.cpp b/intern/cycles/render/osl.cpp
index e2798f438e2..aeb7aeefd0a 100644
--- a/intern/cycles/render/osl.cpp
+++ b/intern/cycles/render/osl.cpp
@@ -203,7 +203,6 @@ void OSLShaderManager::shading_system_init()
"glossy", /* PATH_RAY_GLOSSY */
"singular", /* PATH_RAY_SINGULAR */
"transparent", /* PATH_RAY_TRANSPARENT */
- "volume_scatter", /* PATH_RAY_VOLUME_SCATTER */
"shadow", /* PATH_RAY_SHADOW_OPAQUE */
"shadow", /* PATH_RAY_SHADOW_TRANSPARENT */
@@ -212,6 +211,8 @@ void OSLShaderManager::shading_system_init()
"diffuse_ancestor", /* PATH_RAY_DIFFUSE_ANCESTOR */
"glossy_ancestor", /* PATH_RAY_GLOSSY_ANCESTOR */
"bssrdf_ancestor", /* PATH_RAY_BSSRDF_ANCESTOR */
+ "__unused__", /* PATH_RAY_SINGLE_PASS_DONE */
+ "volume_scatter", /* PATH_RAY_VOLUME_SCATTER */
};
const int nraytypes = sizeof(raytypes)/sizeof(raytypes[0]);