MMDとUTAU その先にあるもの

ゆっくりいきましょう

ユフさんのスケート ~ モデルの多段ボーン化

寒くなってきましたね。なんとなくユフさんにスケートを滑ってもらいたくなってモーションを作ってみました。スケートといえばあのスピンをグルグル回って最後パッと止まっりニッコリするというシーンですよね。ツイッターに作成したものをアップしましたのでよろしければご覧ください。

 

f:id:kwmgc:20161030152247j:plain

                                下のリンクから見れます

 

MMDで回転や複雑なモーションを作る場合、モデルを改造してボーン構造を多段化することがよくあります。多段化することで上下、前後などの動きを別々のボーンに分けることでモーションの調整をしやすくするためです。ただ、今回作るモーションは、ただ単にスピンしてパッと止まるだけのものなのでそんなに難しくもありません。特にボーン構造を改造することもなく(これ以外にはスケートのエッジを作成し取付ける作業がありました)作業を進めました。一旦モーションはできたのですが、スピンをただ回るだけでなく上下に動く動作も付け加えたくなりました。上下に動くだけならセンターボーンとグルーブボーン(どちらもモデルの体幹を動かすための主要なボーンです)を使い分けることで多段化と同じ効果を得ることができます(まだまだ改造の必要はありません)。実際のモーションのつくり方は、左足、右足の両IKボーン(歩くときに接地感をうまく出すため、他のボーンが動いても影響を受けず動かないように設定しているボーンです)とセンターボーン(もしくはグルーブボーン)を順番に選択すれば最後に選択したボーンを中心に回転するようになります。これで回転させながらモーションを登録していけば作ることができます。ただ、MMDでは180度(正面~真後の回転ですね)を超える回転は正面からのマイナス回転として逆方向に回るようになるので、180度未満で回転を細かく繋いでいかなければなりません。こうして作業を進めればスピンのモーションはできあがります。できあがったモーションを見て、今度はこの上下の動きに足を前に伸ばすモーションを付け加えたくなりました。この作業にはIKボーンのモーションを再度設定しなおす必要があります。先ほど述べた通りIKボーンは他のボーンの動きに影響を受けないように作られた特殊なものなので簡単に調整ができません。モーションを登録しているフレームごとに修正を試みましたが他のボーンが回転しているためかIKボーンにねじれが生じます。IK設定をオフにすることもできるのでそれで試してみましたがどうもうまくいきません。そこでモデルのボーン構造を多段化して修正することにしました。多段化の方法はいろいろありますが、今回は任意の回転中心を作成する方法で対応することにしました。

任意の回転中心とは任意の場所でモデルを回転させるためのボーンです。スポーツやアクションなど回転を伴うモーションの他、ドアを開ける、歩きながら回り込むようなモーションにも使うことができます。作り方は、モデルをPmxEditorに読み込み、編集>ボーン>「全ての親」ボーンの追加を2回繰り返します。これで全ての親ボーンが3つできますが、上から2つ目のものを「任意の回転中心」に名称変更します。3つ目のものは「全ての親2」とし、付与の欄の「移動+」を押し(色が変わります)、付与率を-1、付与親を1(任意の回転中心)とします。これで任意の回転中心ボーンを動かせばモデルが好きなところで回転するようになります。この任意の回転中心を使えば、先ほど左足、右足のIKボーンとセンターボーンにつけたモーションをこのボーンのモーションで置き換えることができます。

 

f:id:kwmgc:20161030152309p:plain

 

ツイッターにアップしたものは、結局、足を前に出すモーションは採用せず、最初の改造前のモーションを使いました。それじゃ、任意の回転中心ボーンはいらなかったんじゃないかって?実はMMDにはボーンのモーションを他のボーンにコピーする機能が備わっています(モーションフレームをコピーした後、貼り付け先のボーンを選びCtrl+Fで貼り付け)。任意の回転ボーンにはセンターボーンの回転とおなじモーションを設定しました。これで当初の回転の2倍の速さでスピンすることになります。当初の目的とは異なりましたが、モーションをよりビビッドにすることができました。なお、スピンの回転の速さは徐々に早くなり、ピークの後、徐々に遅くなっています。気がついていただけましたでしょうか。

 

f:id:kwmgc:20161030152324j:plain