diff options
author | Brecht Van Lommel <brecht@blender.org> | 2020-02-27 19:34:43 +0300 |
---|---|---|
committer | Brecht Van Lommel <brecht@blender.org> | 2020-02-27 19:38:24 +0300 |
commit | f48ad37ef08f4b0767807f4e285e365368250157 (patch) | |
tree | 1a2e8e5bf895ab6ebb44e252a34099d09b40df2d /intern/cycles/kernel/svm | |
parent | 33e9e1060f14ef0ac57a4797c1d9117978e5830d (diff) |
Fix T74262: Cycles OpenCL error on some devices after recent changes
Diffstat (limited to 'intern/cycles/kernel/svm')
-rw-r--r-- | intern/cycles/kernel/svm/svm_vector_rotate.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/intern/cycles/kernel/svm/svm_vector_rotate.h b/intern/cycles/kernel/svm/svm_vector_rotate.h index 903a9c1d1db..0dc0e223f41 100644 --- a/intern/cycles/kernel/svm/svm_vector_rotate.h +++ b/intern/cycles/kernel/svm/svm_vector_rotate.h @@ -57,7 +57,9 @@ ccl_device void svm_node_vector_rotate(ShaderData *sd, break; } float angle = stack_load_float(stack, angle_stack_offset); - result = len(axis) ? rotate_around_axis(vector - center, axis, angle) + center : vector; + result = (len_squared(axis) != 0.0f) ? + rotate_around_axis(vector - center, axis, angle) + center : + vector; } /* Output */ |