From b8ae3a24e8cb4555c797c878eb90987e65049dcf Mon Sep 17 00:00:00 2001 From: TypeICall <35572410+TypeICall@users.noreply.github.com> Date: Mon, 17 Jul 2023 23:27:38 -0400 Subject: [PATCH] Update Vector3.cs Reduced the number of calculations involved in Project and ProjectOnPlane. --- Runtime/Export/Math/Vector3.cs | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/Runtime/Export/Math/Vector3.cs b/Runtime/Export/Math/Vector3.cs index 8c07e87e1d..cd18423c27 100644 --- a/Runtime/Export/Math/Vector3.cs +++ b/Runtime/Export/Math/Vector3.cs @@ -296,10 +296,10 @@ public static Vector3 Project(Vector3 vector, Vector3 onNormal) return zero; else { - var dot = Dot(vector, onNormal); - return new Vector3(onNormal.x * dot / sqrMag, - onNormal.y * dot / sqrMag, - onNormal.z * dot / sqrMag); + var dotSqrMag = Dot(vector, onNormal)/ sqrMag; + return new Vector3(onNormal.x * dotSqrMag, + onNormal.y * dotSqrMag, + onNormal.z * dotSqrMag); } } @@ -312,10 +312,10 @@ public static Vector3 ProjectOnPlane(Vector3 vector, Vector3 planeNormal) return vector; else { - var dot = Dot(vector, planeNormal); - return new Vector3(vector.x - planeNormal.x * dot / sqrMag, - vector.y - planeNormal.y * dot / sqrMag, - vector.z - planeNormal.z * dot / sqrMag); + var dotSqrMag = Dot(vector, planeNormal)/ sqrMag; + return new Vector3(vector.x - planeNormal.x * dotSqrMag, + vector.y - planeNormal.y * dotSqrMag, + vector.z - planeNormal.z * dotSqrMag); } }