[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [56628] trunk/blender/intern/cycles/render : Cycles:

Thomas Dinges blender at dingto.org
Thu May 9 17:20:01 CEST 2013


Revision: 56628
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=56628
Author:   dingto
Date:     2013-05-09 15:20:00 +0000 (Thu, 09 May 2013)
Log Message:
-----------
Cycles:
* Change some if / else if conditions to switch / case. 

Modified Paths:
--------------
    trunk/blender/intern/cycles/render/mesh_displace.cpp
    trunk/blender/intern/cycles/render/svm.cpp

Modified: trunk/blender/intern/cycles/render/mesh_displace.cpp
===================================================================
--- trunk/blender/intern/cycles/render/mesh_displace.cpp	2013-05-09 15:04:32 UTC (rev 56627)
+++ trunk/blender/intern/cycles/render/mesh_displace.cpp	2013-05-09 15:20:00 UTC (rev 56628)
@@ -79,19 +79,21 @@
 			int object = ~object_index;
 			int prim = mesh->tri_offset + i;
 			float u, v;
-
-			if(j == 0) {
-				u = 1.0f;
-				v = 0.0f;
+			
+			switch (j) {
+				case 0:
+					u = 1.0f;
+					v = 0.0f;
+					break;
+				case 1:
+					u = 0.0f;
+					v = 1.0f;
+					break;
+				default:
+					u = 0.0f;
+					v = 0.0f;
+					break;
 			}
-			else if(j == 1) {
-				u = 0.0f;
-				v = 1.0f;
-			}
-			else {
-				u = 0.0f;
-				v = 0.0f;
-			}
 
 			/* back */
 			uint4 in = make_uint4(object, prim, __float_as_int(u), __float_as_int(v));

Modified: trunk/blender/intern/cycles/render/svm.cpp
===================================================================
--- trunk/blender/intern/cycles/render/svm.cpp	2013-05-09 15:04:32 UTC (rev 56627)
+++ trunk/blender/intern/cycles/render/svm.cpp	2013-05-09 15:20:00 UTC (rev 56628)
@@ -124,23 +124,28 @@
 
 int SVMCompiler::stack_size(ShaderSocketType type)
 {
-	if(type == SHADER_SOCKET_FLOAT)
-		return 1;
-	else if(type == SHADER_SOCKET_INT)
-		return 1;
-	else if(type == SHADER_SOCKET_COLOR)
-		return 3;
-	else if(type == SHADER_SOCKET_VECTOR)
-		return 3;
-	else if(type == SHADER_SOCKET_NORMAL)
-		return 3;
-	else if(type == SHADER_SOCKET_POINT)
-		return 3;
-	else if(type == SHADER_SOCKET_CLOSURE)
-		return 0;
-
-	assert(0);
-	return 0;
+	int size = 0;
+	
+	switch (type) {
+		case SHADER_SOCKET_FLOAT:
+		case SHADER_SOCKET_INT:
+			size = 1;
+			break;
+		case SHADER_SOCKET_COLOR:
+		case SHADER_SOCKET_VECTOR:
+		case SHADER_SOCKET_NORMAL:
+		case SHADER_SOCKET_POINT:
+			size = 3;
+			break;
+		case SHADER_SOCKET_CLOSURE:
+			size = 0;
+			break;
+		default:
+			assert(0);
+			break;
+	}
+	
+	return size;
 }
 
 int SVMCompiler::stack_find_offset(ShaderSocketType type)
@@ -581,14 +586,20 @@
 	ShaderNode *node = graph->output();
 	ShaderInput *clin = NULL;
 	
-	if(type == SHADER_TYPE_SURFACE)
-		clin = node->input("Surface");
-	else if(type == SHADER_TYPE_VOLUME)
-		clin = node->input("Volume");
-	else if(type == SHADER_TYPE_DISPLACEMENT)
-		clin = node->input("Displacement");
-	else
-		assert(0);
+	switch (type) {
+		case SHADER_TYPE_SURFACE:
+			clin = node->input("Surface");
+			break;
+		case SHADER_TYPE_VOLUME:
+			clin = node->input("Volume");
+			break;
+		case SHADER_TYPE_DISPLACEMENT:
+			clin = node->input("Displacement");
+			break;
+		default:
+			assert(0);
+			break;
+	}
 
 	/* clear all compiler state */
 	memset(&active_stack, 0, sizeof(active_stack));
@@ -604,21 +615,23 @@
 	if(shader->used) {
 		if(clin->link) {
 			bool generate = false;
-			if(type == SHADER_TYPE_SURFACE) {
-				/* generate surface shader */
-				generate = true;
-				shader->has_surface = true;
+			
+			switch (type) {
+				case SHADER_TYPE_SURFACE: /* generate surface shader */		
+					generate = true;
+					shader->has_surface = true;
+					break;
+				case SHADER_TYPE_VOLUME: /* generate volume shader */
+					generate = true;
+					shader->has_volume = true;
+					break;
+				case SHADER_TYPE_DISPLACEMENT: /* generate displacement shader */
+					generate = true;
+					shader->has_displacement = true;
+					break;
+				default:
+					break;
 			}
-			else if(type == SHADER_TYPE_VOLUME) {
-				/* generate volume shader */
-				generate = true;
-				shader->has_volume = true;
-			}
-			else if(type == SHADER_TYPE_DISPLACEMENT) {
-				/* generate displacement shader */
-				generate = true;
-				shader->has_displacement = true;
-			}
 
 			if(generate) {
 				set<ShaderNode*> done;




More information about the Bf-blender-cvs mailing list