diff options
Diffstat (limited to 'intern/cycles/kernel/svm/svm_attribute.h')
-rw-r--r-- | intern/cycles/kernel/svm/svm_attribute.h | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/intern/cycles/kernel/svm/svm_attribute.h b/intern/cycles/kernel/svm/svm_attribute.h index e26a85f5b36..079aac6ae44 100644 --- a/intern/cycles/kernel/svm/svm_attribute.h +++ b/intern/cycles/kernel/svm/svm_attribute.h @@ -87,7 +87,7 @@ ccl_device void svm_node_attr(KernelGlobals *kg, ShaderData *sd, float *stack, u stack_store_float3(stack, out_offset, make_float3(f.x, f.y, 0.0f)); } } - else if (desc.type == NODE_ATTR_RGBA) { + else if (desc.type == NODE_ATTR_FLOAT4 || desc.type == NODE_ATTR_RGBA) { float4 f = primitive_surface_attribute_float4(kg, sd, desc, NULL, NULL); if (type == NODE_ATTR_FLOAT) { stack_store_float(stack, out_offset, average(float4_to_float3(f))); @@ -147,7 +147,7 @@ ccl_device void svm_node_attr_bump_dx(KernelGlobals *kg, ShaderData *sd, float * stack_store_float3(stack, out_offset, make_float3(f.x + dx.x, f.y + dx.y, 0.0f)); } } - else if (desc.type == NODE_ATTR_RGBA) { + else if (desc.type == NODE_ATTR_FLOAT4 || desc.type == NODE_ATTR_RGBA) { float4 dx; float4 f = primitive_surface_attribute_float4(kg, sd, desc, &dx, NULL); if (type == NODE_ATTR_FLOAT) { @@ -209,7 +209,7 @@ ccl_device void svm_node_attr_bump_dy(KernelGlobals *kg, ShaderData *sd, float * stack_store_float3(stack, out_offset, make_float3(f.x + dy.x, f.y + dy.y, 0.0f)); } } - else if (desc.type == NODE_ATTR_RGBA) { + else if (desc.type == NODE_ATTR_FLOAT4 || desc.type == NODE_ATTR_RGBA) { float4 dy; float4 f = primitive_surface_attribute_float4(kg, sd, desc, NULL, &dy); if (type == NODE_ATTR_FLOAT) { |