[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [52486] trunk/blender/intern/cycles/kernel : Cycles: disable anisotropic BSDF on CUDA sm 1.x, to try to get it building again.

Brecht Van Lommel brechtvanlommel at pandora.be
Thu Nov 22 17:08:21 CET 2012


Revision: 52486
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=52486
Author:   blendix
Date:     2012-11-22 16:08:18 +0000 (Thu, 22 Nov 2012)
Log Message:
-----------
Cycles: disable anisotropic BSDF on CUDA sm 1.x, to try to get it building again.

Modified Paths:
--------------
    trunk/blender/intern/cycles/kernel/kernel_types.h
    trunk/blender/intern/cycles/kernel/svm/svm_bsdf.h
    trunk/blender/intern/cycles/kernel/svm/svm_closure.h
    trunk/blender/intern/cycles/kernel/svm/svm_tex_coord.h

Modified: trunk/blender/intern/cycles/kernel/kernel_types.h
===================================================================
--- trunk/blender/intern/cycles/kernel/kernel_types.h	2012-11-22 12:48:09 UTC (rev 52485)
+++ trunk/blender/intern/cycles/kernel/kernel_types.h	2012-11-22 16:08:18 UTC (rev 52486)
@@ -111,6 +111,7 @@
 #define __BACKGROUND_MIS__
 #define __AO__
 #define __CAMERA_MOTION__
+#define __ANISOTROPIC__
 
 #ifndef __KERNEL_CUDA__
 #define __OBJECT_MOTION__
@@ -375,7 +376,9 @@
 	float data1;
 
 	float3 N;
+#ifdef __ANISOTROPIC__
 	float3 T;
+#endif
 
 } ShaderClosure;
 

Modified: trunk/blender/intern/cycles/kernel/svm/svm_bsdf.h
===================================================================
--- trunk/blender/intern/cycles/kernel/svm/svm_bsdf.h	2012-11-22 12:48:09 UTC (rev 52485)
+++ trunk/blender/intern/cycles/kernel/svm/svm_bsdf.h	2012-11-22 16:08:18 UTC (rev 52486)
@@ -24,7 +24,7 @@
 #include "../closure/bsdf_reflection.h"
 #include "../closure/bsdf_refraction.h"
 #include "../closure/bsdf_transparent.h"
-#ifdef __DPDU__
+#ifdef __ANISOTROPIC__
 #include "../closure/bsdf_ward.h"
 #endif
 #include "../closure/bsdf_westin.h"
@@ -75,7 +75,7 @@
 			label = bsdf_microfacet_beckmann_sample(sc, sd->Ng, sd->I, sd->dI.dx, sd->dI.dy, randu, randv,
 				eval, omega_in, &domega_in->dx, &domega_in->dy, pdf);
 			break;
-#ifdef __DPDU__
+#ifdef __ANISOTROPIC__
 		case CLOSURE_BSDF_WARD_ID:
 			label = bsdf_ward_sample(sc, sd->Ng, sd->I, sd->dI.dx, sd->dI.dy, randu, randv,
 				eval, omega_in, &domega_in->dx, &domega_in->dy, pdf);
@@ -138,7 +138,7 @@
 			case CLOSURE_BSDF_MICROFACET_BECKMANN_REFRACTION_ID:
 				eval = bsdf_microfacet_beckmann_eval_reflect(sc, sd->I, omega_in, pdf);
 				break;
-#ifdef __DPDU__
+#ifdef __ANISOTROPIC__
 			case CLOSURE_BSDF_WARD_ID:
 				eval = bsdf_ward_eval_reflect(sc, sd->I, omega_in, pdf);
 				break;
@@ -187,7 +187,7 @@
 			case CLOSURE_BSDF_MICROFACET_BECKMANN_REFRACTION_ID:
 				eval = bsdf_microfacet_beckmann_eval_transmit(sc, sd->I, omega_in, pdf);
 				break;
-#ifdef __DPDU__
+#ifdef __ANISOTROPIC__
 			case CLOSURE_BSDF_WARD_ID:
 				eval = bsdf_ward_eval_transmit(sc, sd->I, omega_in, pdf);
 				break;
@@ -244,7 +244,7 @@
 		case CLOSURE_BSDF_MICROFACET_BECKMANN_REFRACTION_ID:
 			bsdf_microfacet_beckmann_blur(sc, roughness);
 			break;
-#ifdef __DPDU__
+#ifdef __ANISOTROPIC__
 		case CLOSURE_BSDF_WARD_ID:
 			bsdf_ward_blur(sc, roughness);
 			break;

Modified: trunk/blender/intern/cycles/kernel/svm/svm_closure.h
===================================================================
--- trunk/blender/intern/cycles/kernel/svm/svm_closure.h	2012-11-22 12:48:09 UTC (rev 52485)
+++ trunk/blender/intern/cycles/kernel/svm/svm_closure.h	2012-11-22 16:08:18 UTC (rev 52486)
@@ -225,7 +225,6 @@
 
 			break;
 		}
-#ifdef __DPDU__
 		case CLOSURE_BSDF_WARD_ID: {
 #ifdef __CAUSTICS_TRICKS__
 			if(kernel_data.integrator.no_caustics && (path_flag & PATH_RAY_DIFFUSE))
@@ -233,9 +232,11 @@
 #endif
 			ShaderClosure *sc = svm_node_closure_get(sd);
 			sc->N = N;
-			sc->T = stack_load_float3(stack, data_node.z);
 			svm_node_closure_set_mix_weight(sc, mix_weight);
 
+#ifdef __ANISOTROPIC__
+			sc->T = stack_load_float3(stack, data_node.z);
+
 			/* rotate tangent */
 			float rotation = stack_load_float(stack, data_node.w);
 
@@ -256,9 +257,11 @@
 			}
 
 			sd->flag |= bsdf_ward_setup(sc);
+#else
+			sd->flag |= bsdf_diffuse_setup(sc);
+#endif
 			break;
 		}
-#endif
 		case CLOSURE_BSDF_ASHIKHMIN_VELVET_ID: {
 			ShaderClosure *sc = svm_node_closure_get(sd);
 			sc->N = N;

Modified: trunk/blender/intern/cycles/kernel/svm/svm_tex_coord.h
===================================================================
--- trunk/blender/intern/cycles/kernel/svm/svm_tex_coord.h	2012-11-22 12:48:09 UTC (rev 52485)
+++ trunk/blender/intern/cycles/kernel/svm/svm_tex_coord.h	2012-11-22 16:08:18 UTC (rev 52486)
@@ -283,7 +283,7 @@
 		N = normalize(sd->N + (N - sd->N)*strength);
 	}
 
-	stack_store_float3(stack, normal_offset, normalize(N));
+	stack_store_float3(stack, normal_offset, N);
 }
 
 __device void svm_node_tangent(KernelGlobals *kg, ShaderData *sd, float *stack, uint4 node)




More information about the Bf-blender-cvs mailing list