[Bf-blender-cvs] [767eb3cd6ad] microfacet_hair: Only add normal attributes for elliptical hairs

Weizhen Huang noreply at git.blender.org
Tue Dec 27 15:22:12 CET 2022


Commit: 767eb3cd6ad837f05eb93c6f42e7e73dda44eca0
Author: Weizhen Huang
Date:   Tue Dec 27 13:52:25 2022 +0100
Branches: microfacet_hair
https://developer.blender.org/rB767eb3cd6ad837f05eb93c6f42e7e73dda44eca0

Only add normal attributes for elliptical hairs

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

M	intern/cycles/scene/shader_nodes.cpp

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

diff --git a/intern/cycles/scene/shader_nodes.cpp b/intern/cycles/scene/shader_nodes.cpp
index e1e602e240b..0f98c16b58e 100644
--- a/intern/cycles/scene/shader_nodes.cpp
+++ b/intern/cycles/scene/shader_nodes.cpp
@@ -3698,7 +3698,10 @@ MicrofacetHairBsdfNode::MicrofacetHairBsdfNode() : BsdfBaseNode(get_node_type())
 void MicrofacetHairBsdfNode::attributes(Shader *shader, AttributeRequestSet *attributes)
 {
   /* Make sure we have the normal for elliptical cross section tracking */
-  attributes->add(ATTR_STD_VERTEX_NORMAL);
+  if (model_type == NODE_MICROFACET_HAIR_ELLIPTIC_BECKMANN ||
+      model_type == NODE_MICROFACET_HAIR_ELLIPTIC_GGX) {
+    attributes->add(ATTR_STD_VERTEX_NORMAL);
+  }
 
   if (!input("Random")->link) {
     attributes->add(ATTR_STD_CURVE_RANDOM);



More information about the Bf-blender-cvs mailing list