|
|
@ -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; |
|
|
|
} |
|
|
|