private static Vector3 DoVector3Lerp(Vector3 value1, Vector3 value2, float time, TransformDataLerpSettings.ModeSetting settings) { Vector3 output; switch (settings) { case TransformDataLerpSettings.ModeSetting.Use: output = Vector3Lerp.Lerp(value1, value2, time); break; case TransformDataLerpSettings.ModeSetting.Left: output = value1; break; case TransformDataLerpSettings.ModeSetting.Right: output = value2; break; default: throw new ArgumentOutOfRangeException(); } return(output); }
private static Quaternion DoQuaternionLerp(Quaternion value1, Quaternion value2, float time, TransformDataLerpSettings.ModeSetting settings) { Quaternion output; switch (settings) { case TransformDataLerpSettings.ModeSetting.Use: output = QuaternionLerp.Lerp(value1, value2, time); break; case TransformDataLerpSettings.ModeSetting.Left: output = value1; break; case TransformDataLerpSettings.ModeSetting.Right: output = value2; break; default: throw new ArgumentOutOfRangeException(); } return(output); }