SA.FullBodyIK._LerpRotateBasis C# (CSharp) 메소드

_LerpRotateBasis() 정적인 개인적인 메소드

static private _LerpRotateBasis ( Matrix3x3 &basis, Vector3 &axis, float cos, float rate ) : void
basis Matrix3x3
axis Vector3
cos float
rate float
리턴 void
		static void _LerpRotateBasis( out Matrix3x3 basis, ref Vector3 axis, float cos, float rate )
		{
			if( rate <= IKEpsilon ) {
				basis = Matrix3x3.identity;
				return;
			}

			if( rate <= 1.0f - IKEpsilon ) {
				float acos = (cos >= 1.0f - IKEpsilon) ? 0.0f : ((cos <= -1.0f - IKEpsilon) ? (180.0f * Mathf.Deg2Rad) : (float)System.Math.Acos( (float)cos ));
				cos = (float)System.Math.Cos( (float)(acos * rate) );
			}

			SAFBIKMatSetAxisAngle( out basis, ref axis, cos );
		}
FullBodyIK