[Bf-blender-cvs] [8a38d84] master: Cycles: Use Displacement type in OSL ShadingSystem.

Thomas Dinges noreply at git.blender.org
Thu Mar 6 21:03:53 CET 2014


Commit: 8a38d840e99be38a4827fefb3834c9704050e4a8
Author: Thomas Dinges
Date:   Thu Mar 6 21:02:41 2014 +0100
https://developer.blender.org/rB8a38d840e99be38a4827fefb3834c9704050e4a8

Cycles: Use Displacement type in OSL ShadingSystem.

Reviewed by: brecht
Differential Revision: https://developer.blender.org/D386

===================================================================

M	intern/cycles/render/osl.cpp

===================================================================

diff --git a/intern/cycles/render/osl.cpp b/intern/cycles/render/osl.cpp
index aeb7aee..d4ca014 100644
--- a/intern/cycles/render/osl.cpp
+++ b/intern/cycles/render/osl.cpp
@@ -513,16 +513,14 @@ void OSLCompiler::add(ShaderNode *node, const char *name, bool isfilepath)
 		}
 	}
 
-	/* create shader of the appropriate type. we pass "surface" to all shaders,
-	 * because "volume" and "displacement" don't work yet in OSL. the shaders
-	 * work fine, but presumably these values would be used for more strict
-	 * checking, so when that is fixed, we should update the code here too. */
+	/* create shader of the appropriate type. OSL only distinguishes between "surface"
+	 * and "displacement" atm */
 	if(current_type == SHADER_TYPE_SURFACE)
 		ss->Shader("surface", name, id(node).c_str());
 	else if(current_type == SHADER_TYPE_VOLUME)
 		ss->Shader("surface", name, id(node).c_str());
 	else if(current_type == SHADER_TYPE_DISPLACEMENT)
-		ss->Shader("surface", name, id(node).c_str());
+		ss->Shader("displacement", name, id(node).c_str());
 	else
 		assert(0);




More information about the Bf-blender-cvs mailing list