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
diff options
context:
space:
mode:
authorBrecht Van Lommel <brechtvanlommel@pandora.be>2012-10-10 17:02:20 +0400
committerBrecht Van Lommel <brechtvanlommel@pandora.be>2012-10-10 17:02:20 +0400
commitf0a9b664694dacb0388a8e078d46753dc6a36352 (patch)
tree2abf4e68d65708dd36133f1ed83c2b578d34b859 /intern/cycles/kernel/svm/svm.h
parentb4671d67edef053118ae53b12b2672603a8bf9b6 (diff)
Cycles: Anisotropic BSDF enabled, with tangents now computed from the active UV map.
It's using the Ward BSDF currently, which has some energy loss so might be a bit dark. More/better BSDF options can be implemented later. Patch by Mike Farnsworth, some modifications by me. Currently it's not possible yet to set a custom tangent, that will follow as part of per-bsdf normals patch.
Diffstat (limited to 'intern/cycles/kernel/svm/svm.h')
-rw-r--r--intern/cycles/kernel/svm/svm.h14
1 files changed, 11 insertions, 3 deletions
diff --git a/intern/cycles/kernel/svm/svm.h b/intern/cycles/kernel/svm/svm.h
index 5b0f192ea47..e5167a4f670 100644
--- a/intern/cycles/kernel/svm/svm.h
+++ b/intern/cycles/kernel/svm/svm.h
@@ -205,6 +205,14 @@ __device_noinline void svm_eval_nodes(KernelGlobals *kg, ShaderData *sd, ShaderT
case NODE_CLOSURE_WEIGHT:
svm_node_closure_weight(sd, stack, node.y);
break;
+#ifdef __DPDU__
+ case NODE_CLOSURE_SET_TANGENT:
+ svm_node_closure_set_tangent(sd, node.y, node.z, node.w);
+ break;
+ case NODE_CLOSURE_TANGENT:
+ svm_node_closure_tangent(sd, stack, node.y);
+ break;
+#endif
case NODE_EMISSION_WEIGHT:
svm_node_emission_weight(kg, sd, stack, node);
break;
@@ -261,14 +269,14 @@ __device_noinline void svm_eval_nodes(KernelGlobals *kg, ShaderData *sd, ShaderT
svm_node_camera(kg, sd, stack, node.y, node.z, node.w);
break;
case NODE_GEOMETRY:
- svm_node_geometry(sd, stack, node.y, node.z);
+ svm_node_geometry(kg, sd, stack, node.y, node.z);
break;
#ifdef __EXTRA_NODES__
case NODE_GEOMETRY_BUMP_DX:
- svm_node_geometry_bump_dx(sd, stack, node.y, node.z);
+ svm_node_geometry_bump_dx(kg, sd, stack, node.y, node.z);
break;
case NODE_GEOMETRY_BUMP_DY:
- svm_node_geometry_bump_dy(sd, stack, node.y, node.z);
+ svm_node_geometry_bump_dy(kg, sd, stack, node.y, node.z);
break;
case NODE_LIGHT_PATH:
svm_node_light_path(sd, stack, node.y, node.z, path_flag);