そらとぶろーぐG

MMDのモーションのお話に終始すると思います。

補間曲線で滑らかモーションを目指す話 その3

2021年10月19日 | MMD

縦と横に動ければつまりは縦横無尽

 

足IKやセンターボーンなどにある移動ボーン。

「どうせ始点と終点をS字にする」

正解です。

ですがどこの始点と終点か。

今回は移動ボーンのお話です。

 

 

2021年10月7日にサービスを終了したブロマガに書いていた2016年の記事を焼き直した物になります。

MMDの基本的な操作方法については割愛させていただきます。

「自分のモーションを滑らかにしたい」方に向けた記事です。

 

 


 

軸で見る

 

 

移動ボーンを滑らかにするには空間での始点と終点に注意する必要があります。

まず、この足の動きを左右・上下・前後と見るのではなく、

Global軸での「X軸移動・Y軸移動・Z軸移動」と考えます。

 

 

この動きは「右足IKを前に出して向きを変えてまた右足IKを前に出す」ではなく、

「右足IKをZ軸方向に出した後、向きを変えて右足IKをX軸方向に出す」と考えます。

 

これは斜めに足を出す、ではなくZ軸方向とX軸方向に移動しています。

 

 

そして移動ボーンの補間曲線はボーン移動のそれぞれの「軸ごとの始点と終点をS字」設定します。

 

 

これはZ軸とX軸方向へ移動していますので、

Z軸とX軸をS字にします。

 

 

Z軸だけS字にすると、

X軸方向の移動が等速になりますので、動きが変わってしまいます。

 

 

 


 

軸を見る

 

 

 

歩く、飛ぶ、ステップなどなど足の動き、そしてモデルの腰の動きにあたるセンターボーンは基本的に前後左右上下に動きます。

XYZ軸への移動が組み合わさるだけでなく、回転も加わります。

そんな場合も「軸ごとのボーン移動の始点と終点をS字にする」ことで滑らかな動きになります。

 

例えば足を上げて前に出す場合。

 

 

軸ごとに分けると

700フレームから720フレームまでがZ軸移動、

700フレームから710フレームと710フレームから720フレームまでがY軸移動になります。

 

それぞれの軸ごとの始点と終点をS字にします。

そして中間点の扱いは前回の記事の通り。

 

ということで

710フレームと720フレームのY軸補間曲線は

710フレームと720フレームのZ軸補間曲線は中間に1つキーフレームが挟まる時の

 

このようになります。

 

 

回転も加えてみました。前に出した足が着地する前と足を戻そうと上げた時ににつま先が上がっています。

ややこしいように見えても

 

 

軸で分ければこんな感じ。

とにかく始点と終点をS字にすることには変わりません。

 

 


 

全ての親

 

あと注意したいのが「全ての親」ボーンを回転させると画面の座標軸は変わらないのにGlobal軸が一緒に回転してしまいます。

静止画です

 

全ての親ボーンを45度回転させ、センターと足IKを逆方向に45度回転させて正面を向いています。

見た目何も変わりがないこの状態、しかし座標軸はそのままでGlobal軸が45度傾いてしまっています。

足をZ軸方向へ移動させてZ軸の補間曲線をS字にすればOK……のはずが

こう見えてZ軸とX軸方向への動きになりますので注意が必要です。

全ての親は回さないほうがいいかもしれません。

 


 

 

これも軸ごとに分けられるので

 

 

軸足でくるっと回る「ターン」

回転の中心はつま先の親指の付け根辺り。

足IKボーンはくるぶしの辺りにありますので、足IKが円運動しながら回転することでこの動きになっています。

 

 

あまり見すぎると酔うかもしれません

 

上下の動き(ここではZ軸)と左右の動き(ここではX軸)、往復する2本の線の交わる点が円を描いています。(……描いていますよ)

つまりZ軸の往復とX軸の往復を組み合わせれば円の動きが再現できるようです。

 

図にしてみました。

各軸の両端が往復の始点と終点になります。

軸ごとのボーン移動の両端になる部分でキーフレームが必要ですので、

Global軸での0度・-90度・180度・90度・0度でキーフレームを打ちます。

 

920フレームは回転そのものの始まりなのでZ軸X軸ともに始点、

945フレームは回転そのものの終わりなのでZ軸X軸ともに終点になります。

 

927Fから

X軸

Z軸

 

という設定にしています。

 

 

こんな感じのターンでも見るのはあくまで軸ごとの始点から終点です。

 

ちなみに補間曲線設定はX印をドラッグするという目分量での設定になりますので、

どうしても均等な設定にならずにその場その場での微調整は必要になると思います。

 

 

 


 

おわりに

 

 

今回はボーンの移動について語ってみました。

回転と違うのはGlobal軸での軸ごとに移動を見る必要がある、という点です。

ただ、やっぱり「動きの始点と終点をS字にする」ことに変わりはなく、

じゃあもうなんでもとにかく始点から終点をS字にすることで滑らかになるのではないか。

 

……と、そうではない部分、むしろ補間曲線を設定したが故に滑らかにならない事。

 

それはまた次回に。

 

モデル    :     初音ミク Ver2.3    あにまささん