Hi guys,
I want to rotate an object just using angular Velocity, so it can respond fine when collision to others objects, right now i am trying this.
Quaternion dRot = ( desireRotation) * Quaternion.Inverse( rb.rotation );
Vector3 dEuler = dRot.eulerAngles;
if (dEuler.x > 180) dEuler.x -= 360;
if (dEuler.y > 180) dEuler.y -= 360;
if (dEuler.z > 180) dEuler.z -= 360;
Vector3 w = dEuler / Time.fixedUnscaledDeltaTime;
Vector3 angularVelocity = ( w - rb.angularVelocity ) * 0.01f;
rb.angularVelocity = Vector3.MoveTowards( rb.angularVelocity, angularVelocity, angularVelocityChangeThreshold );
But it is no working, when it collides with others objects it start shaking and make strange movements, any idea what i am doing wrong?
Thanks in advance.