|
@@ -1422,20 +1422,21 @@ RMDEF Quaternion QuaternionFromAxisAngle(Vector3 axis, float angle)
|
|
|
Quaternion result = { 0.0f, 0.0f, 0.0f, 1.0f };
|
|
|
|
|
|
if (Vector3Length(axis) != 0.0f)
|
|
|
+ {
|
|
|
+ angle *= 0.5f;
|
|
|
|
|
|
- angle *= 0.5f;
|
|
|
-
|
|
|
- axis = Vector3Normalize(axis);
|
|
|
+ axis = Vector3Normalize(axis);
|
|
|
|
|
|
- float sinres = sinf(angle);
|
|
|
- float cosres = cosf(angle);
|
|
|
+ float sinres = sinf(angle);
|
|
|
+ float cosres = cosf(angle);
|
|
|
|
|
|
- result.x = axis.x*sinres;
|
|
|
- result.y = axis.y*sinres;
|
|
|
- result.z = axis.z*sinres;
|
|
|
- result.w = cosres;
|
|
|
+ result.x = axis.x*sinres;
|
|
|
+ result.y = axis.y*sinres;
|
|
|
+ result.z = axis.z*sinres;
|
|
|
+ result.w = cosres;
|
|
|
|
|
|
- result = QuaternionNormalize(result);
|
|
|
+ result = QuaternionNormalize(result);
|
|
|
+ }
|
|
|
|
|
|
return result;
|
|
|
}
|