Don't call sqrtf when axis already normalized

This commit is contained in:
Dan Bechard 2021-03-23 02:34:31 -07:00
parent 81738bfa98
commit 2bfe35ef4f

View File

@ -856,14 +856,14 @@ RMDEF Matrix MatrixRotate(Vector3 axis, float angle)
float x = axis.x, y = axis.y, z = axis.z; float x = axis.x, y = axis.y, z = axis.z;
float length = sqrtf(x*x + y*y + z*z); float lengthSquared = x*x + y*y + z*z;
if ((length != 1.0f) && (length != 0.0f)) if ((lengthSquared != 1.0f) && (lengthSquared != 0.0f))
{ {
length = 1.0f/length; float inverseLength = 1.0f/sqrtf(lengthSquared);
x *= length; x *= inverseLength;
y *= length; y *= inverseLength;
z *= length; z *= inverseLength;
} }
float sinres = sinf(angle); float sinres = sinf(angle);