Beispiel #1
0
 /// <summary>
 ///     与えた2つのフレームから指定フレームでの補完位置を計算します。
 /// </summary>
 /// <param name="frame1"></param>
 /// <param name="frame2"></param>
 /// <param name="frame"></param>
 /// <returns></returns>
 public static Vector3 ComplementTranslate(ボーンフレーム frame1, ボーンフレーム frame2, Vector3 progress)
 {
     return(new Vector3(
                Lerp(frame1.ボーンの位置.X, frame2.ボーンの位置.X, progress.X),
                Lerp(frame1.ボーンの位置.Y, frame2.ボーンの位置.Y, progress.Y),
                Lerp(frame1.ボーンの位置.Z, frame2.ボーンの位置.Z, progress.Z)));
 }
Beispiel #2
0
 public void ボーンフレームを追加する(ボーンフレーム boneFrameData)
 {
     _frameManager.フレームデータを追加する(boneFrameData);
 }
Beispiel #3
0
        // 補完系。

        /// <summary>
        ///     与えた2つのフレームから、指定フレームでの回転行列を計算する。
        /// </summary>
        /// <param name="frame1">若いキーフレーム番号</param>
        /// <param name="frame2"></param>
        /// <param name="frame"></param>
        /// <returns></returns>
        public static Quaternion ComplementRotateQuaternion(ボーンフレーム frame1, ボーンフレーム frame2, float progress)
        => Quaternion.Slerp(frame1.ボーンの回転, frame2.ボーンの回転, progress);