diff options
author | Charlie Jolly <mistajolly@gmail.com> | 2021-07-26 13:00:58 +0300 |
---|---|---|
committer | Charlie Jolly <mistajolly@gmail.com> | 2021-07-26 15:06:15 +0300 |
commit | 71d7505487f17ad79eac8a5ac0e778c74333ea07 (patch) | |
tree | 5bee720f871cb19ff97a075872a354b8e98c7c84 | |
parent | a0cba9fb9504e166020d697933f72fa2bb7b7c3d (diff) |
Geometry Nodes: Fix vector math project bug
Implementation is incorrect compared to Cycles/Eevee.
Reported by @DrDubosc in comments of T88922.
Differential Revision: https://developer.blender.org/D12029
-rw-r--r-- | source/blender/nodes/NOD_math_functions.hh | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/source/blender/nodes/NOD_math_functions.hh b/source/blender/nodes/NOD_math_functions.hh index f3eb1c24087..8e153bdb25f 100644 --- a/source/blender/nodes/NOD_math_functions.hh +++ b/source/blender/nodes/NOD_math_functions.hh @@ -266,7 +266,7 @@ inline bool try_dispatch_float_math_fl3_fl3_to_fl3(const NodeVectorMathOperation return dispatch([](float3 a, float3 b) { return float3::cross_high_precision(a, b); }); case NODE_VECTOR_MATH_PROJECT: return dispatch([](float3 a, float3 b) { - float length_squared = float3::dot(a, b); + float length_squared = float3::dot(b, b); return (length_squared != 0.0) ? (float3::dot(a, b) / length_squared) * b : float3(0.0f); }); case NODE_VECTOR_MATH_REFLECT: |