[Bf-blender-cvs] [164dfbe] master: Cycles: Remove some ifdefs for OSL < 1.7.1.

Thomas Dinges noreply at git.blender.org
Thu Feb 11 13:59:02 CET 2016


Commit: 164dfbeb5039f5ac6c95d331049f7ea20ef5edef
Author: Thomas Dinges
Date:   Thu Feb 11 13:57:39 2016 +0100
Branches: master
https://developer.blender.org/rB164dfbeb5039f5ac6c95d331049f7ea20ef5edef

Cycles: Remove some ifdefs for OSL < 1.7.1.

That means that we now only support OSL 1.7.1 or newer. Please update libs or re-run install-depsh.sh.

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

M	intern/cycles/blender/blender_shader.cpp
M	intern/cycles/kernel/osl/osl_closures.h
M	intern/cycles/kernel/osl/osl_shader.cpp
M	intern/cycles/render/nodes.cpp

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

diff --git a/intern/cycles/blender/blender_shader.cpp b/intern/cycles/blender/blender_shader.cpp
index c9a7f27..b82e7dd 100644
--- a/intern/cycles/blender/blender_shader.cpp
+++ b/intern/cycles/blender/blender_shader.cpp
@@ -114,9 +114,6 @@ static ShaderSocketType convert_osl_socket_type(OSL::OSLQuery& query,
                                                 BL::NodeSocket& b_socket)
 {
 	ShaderSocketType socket_type = convert_socket_type(b_socket);
-#if OSL_LIBRARY_VERSION_CODE < 10701
-	(void) query;
-#else
 	if(socket_type == SHADER_SOCKET_VECTOR) {
 		/* TODO(sergey): Do we need compatible_name() here? */
 		const OSL::OSLQuery::Parameter *param = query.getparam(b_socket.name());
@@ -130,7 +127,7 @@ static ShaderSocketType convert_osl_socket_type(OSL::OSLQuery& query,
 			}
 		}
 	}
-#endif
+
 	return socket_type;
 }
 #endif  /* WITH_OSL */
@@ -561,7 +558,7 @@ static ShaderNode *add_node(Scene *scene,
 			 * input/output type info needed for proper node construction.
 			 */
 			OSL::OSLQuery query;
-#if OSL_LIBRARY_VERSION_CODE >= 10701
+
 			if(!bytecode_hash.empty()) {
 				query.open_bytecode(b_script_node.bytecode());
 			}
@@ -569,7 +566,6 @@ static ShaderNode *add_node(Scene *scene,
 				!OSLShaderManager::osl_query(query, b_script_node.filepath());
 			}
 			/* TODO(sergey): Add proper query info error parsing. */
-#endif
 
 			/* Generate inputs/outputs from node sockets
 			 *
diff --git a/intern/cycles/kernel/osl/osl_closures.h b/intern/cycles/kernel/osl/osl_closures.h
index 526c035..1578d06 100644
--- a/intern/cycles/kernel/osl/osl_closures.h
+++ b/intern/cycles/kernel/osl/osl_closures.h
@@ -80,11 +80,6 @@ void name(RendererServices *, int id, void *data) \
 #define TO_COLOR3(v) OSL::Color3(v.x, v.y, v.z)
 #define TO_FLOAT3(v) make_float3(v[0], v[1], v[2])
 
-#if OSL_LIBRARY_VERSION_CODE < 10700
-#  undef CLOSURE_STRING_KEYPARAM
-#  define CLOSURE_STRING_KEYPARAM(st, fld, key) { TypeDesc::TypeString, 0, key, 0 }
-#endif
-
 /* Closure */
 
 class CClosurePrimitive {
@@ -105,9 +100,7 @@ public:
 
 	Category category;
 
-#if OSL_LIBRARY_VERSION_CODE >= 10700
 	OSL::ustring label;
-#endif
 };
 
 /* BSDF */
diff --git a/intern/cycles/kernel/osl/osl_shader.cpp b/intern/cycles/kernel/osl/osl_shader.cpp
index 361a885..f58368e 100644
--- a/intern/cycles/kernel/osl/osl_shader.cpp
+++ b/intern/cycles/kernel/osl/osl_shader.cpp
@@ -147,11 +147,7 @@ static void flatten_surface_closure_tree(ShaderData *sd, int path_flag,
 	/* OSL gives us a closure tree, we flatten it into arrays per
 	 * closure type, for evaluation, sampling, etc later on. */
 
-#if OSL_LIBRARY_VERSION_CODE < 10700
-	switch(closure->type) {
-#else
 	switch(closure->id) {
-#endif
 		case OSL::ClosureColor::MUL: {
 			OSL::ClosureMul *mul = (OSL::ClosureMul *)closure;
 			flatten_surface_closure_tree(sd, path_flag, mul->closure, TO_FLOAT3(mul->weight) * weight);
@@ -355,11 +351,7 @@ static float3 flatten_background_closure_tree(const OSL::ClosureColor *closure)
 	 * is only one supported closure type at the moment, which has no evaluation
 	 * functions, so we just sum the weights */
 
-#if OSL_LIBRARY_VERSION_CODE < 10700
-	switch(closure->type) {
-#else
 	switch(closure->id) {
-#endif
 		case OSL::ClosureColor::MUL: {
 			OSL::ClosureMul *mul = (OSL::ClosureMul *)closure;
 
@@ -417,11 +409,7 @@ static void flatten_volume_closure_tree(ShaderData *sd,
 	/* OSL gives us a closure tree, we flatten it into arrays per
 	 * closure type, for evaluation, sampling, etc later on. */
 
-#if OSL_LIBRARY_VERSION_CODE < 10700
-	switch(closure->type) {
-#else
 	switch(closure->id) {
-#endif
 		case OSL::ClosureColor::MUL: {
 			OSL::ClosureMul *mul = (OSL::ClosureMul *)closure;
 			flatten_volume_closure_tree(sd, mul->closure, TO_FLOAT3(mul->weight) * weight);
diff --git a/intern/cycles/render/nodes.cpp b/intern/cycles/render/nodes.cpp
index c7b2087..cb58537 100644
--- a/intern/cycles/render/nodes.cpp
+++ b/intern/cycles/render/nodes.cpp
@@ -4599,28 +4599,6 @@ void OSLScriptNode::compile(SVMCompiler& /*compiler*/)
 
 void OSLScriptNode::compile(OSLCompiler& compiler)
 {
-#if defined(WITH_OSL) && (OSL_LIBRARY_VERSION_CODE < 10701)
-	/* XXX fix for #36790:
-	 * point and normal parameters are reflected as generic SOCK_VECTOR sockets
-	 * on the node. Socket fixed input values need to be copied explicitly here for
-	 * vector sockets, otherwise OSL will reject the value due to mismatching type.
-	 */
-	foreach(ShaderInput *input, this->inputs) {
-		if(!input->link) {
-			/* no need for compatible_name here, OSL parameter names are always unique */
-			string param_name(input->name);
-			switch(input->type) {
-				case SHADER_SOCKET_VECTOR:
-					compiler.parameter_point(param_name.c_str(), input->value);
-					compiler.parameter_normal(param_name.c_str(), input->value);
-					break;
-				default:
-					break;
-			}
-		}
-	}
-#endif
-
 	if(!filepath.empty())
 		compiler.add(this, filepath.c_str(), true);
 	else




More information about the Bf-blender-cvs mailing list