예제 #1
0
        internal void RotateAroundInternal(Vector3 worldAxis, float rad)
        {
            Vector3 localAxis = InverseTransformDirection(worldAxis);

            if (localAxis.sqrMagnitude > Vector3.kEpsilon)
            {
                localAxis.Normalize();
                Quaternion q = Quaternion.AxisAngleToQuaternionSafe(localAxis, rad);
                m_LocalRotation = Quaternion.NormalizeSafe(m_LocalRotation * q);
                SetDirty();
            }
        }