ScriptReference/Rigidbody2D-rotation #654
Replies: 1 comment
-
|
How does Rigidbody2D read transform rotation? [MethodImpl(MethodImplOptions.AggressiveInlining)]
public static quaternion ToPositiveQuaternion(quaternion q)
{
return q.value.w < 0.0f ? -q.value : q.value;
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static float ZRotationFromQuaternion(quaternion q)
{
var positiveQ = ToPositiveQuaternion(q);
return 2.0f * math.atan2(positiveQ.value.z, positiveQ.value.w);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static quaternion ZQuaternionFromQuaternion(quaternion q)
{
return QuaternionFromZRotation(ZRotationFromQuaternion(q));
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static quaternion QuaternionFromZRotation(float rotation)
{
return new quaternion(0.0f, 0.0f, math.sin(0.5f * rotation), math.cos(0.5f * rotation));
} |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
ScriptReference/Rigidbody2D-rotation
https://docs.unity3d.com/ScriptReference/Rigidbody2D-rotation.html
Beta Was this translation helpful? Give feedback.
All reactions