主にMMDやBlenderの個人的なメモ用です。一部に成人向けの内容を含みます!未成年の方はご覧にならないでください!

このページは編集途中です。

MMDモデルの規約によってはMMDやその派生ソフトウェア以外にモデルを持っていくのを禁止している物もあります!ご注意下さい!

BlenderでMMDモデルを使って.vmdモーションを作成します。
また、Blenderへ動画を読み込んでMMDモデルを使って(手動で)トレースしてみます。

Blender Addonのmmd_toolsを利用します。
導入方法はこちらをどうぞ

BlenderへMMDモデルをインポートする方法に関してはBlender 2.8 mmd_tools Addon/インポートをご覧下さい。

このページでは、ニコニ立体ちゃんモデルを利用させてもらいます。


MMDモデルの標準ボーン(必須ボーン)、準標準ボーン

MMDの人型モデルは一般的に標準ボーン準標準ボーンと言われるボーン名(ボーン構造)が利用されています。
作ったモーションを配布するorほかのモデルにも利用する場合はこれらの標準ボーン(準標準ボーン)のみを操作してキーを登録しないと、ほかのモデルに対してモーションファイルの互換性がなくなります。
逆を言えばモーションを作成したモデルでしか利用しない場合はそのモデルのボーンをすべて使えます。

モデルによって実装されているボーンやボーン名が異なる(厳密にボーン名などが定義されているわけではない)のでご注意ください。
標準ボーン、準標準ボーン名説明
全ての親
センター標準 Y移動はグルーブの方で動かす
グルーブ ”グループ”ではなく”グルーブ”
下半身標準
上半身標準
上半身2/2(全角) モデルによって2(半角)と2(全角)に分かれる
標準 頭部を動かす際は”頭ボーン”を動かす方が比率としては大きい,首ボーンは補助的
標準 頭部を動かす際は主としてこちらのボーンを動かす
左/右目標準 上下左右方向のみ回転させる(奥行き方向へは回転させない)
両目 左目と右目を両方動かせるボーン,上下左右方向のみ回転させる(奥行き方向へは回転させない)
左/右肩標準 操作はY,Z回転のみにするのが無難
左/右腕捩標準 腕を回転(ひねる)させる際に使う
左/右腕標準 ひねる場合は”左/右腕捩”で回転させた方が良い
左/右ひじ標準 ひねる場合は”左/右手捩”で回転させた方が良い,操作はZ回転のみにするのが無難
左/右手捩 ひじを回転(ひねる)させる際に使う
左/右手首標準
左/右親指1/1(全角)標準 モデルによって数字部分が半角と全角に分かれる
左/右親指2/2(全角)標準 モデルによって数字部分が半角と全角に分かれる
左/右人差指1/1(全角)標準 モデルによって数字部分が半角と全角に分かれる
左/右人差指2/2(全角)標準 モデルによって数字部分が半角と全角に分かれる
左/右人差指3/3(全角)標準 モデルによって数字部分が半角と全角に分かれる
左/右中指1/1(全角)標準 モデルによって数字部分が半角と全角に分かれる
左/右中指2/2(全角)標準 モデルによって数字部分が半角と全角に分かれる
左/右中指3/3(全角)標準 モデルによって数字部分が半角と全角に分かれる
左/右薬指1/1(全角)標準 モデルによって数字部分が半角と全角に分かれる
左/右薬指2/2(全角)標準 モデルによって数字部分が半角と全角に分かれる
左/右薬指3/3(全角)標準 モデルによって数字部分が半角と全角に分かれる
左/右小指1/1(全角)標準 モデルによって数字部分が半角と全角に分かれる
左/右小指2/2(全角)標準 モデルによって数字部分が半角と全角に分かれる
左/右小指3/3(全角)標準 モデルによって数字部分が半角と全角に分かれる
左/右足標準
左/右ひざ標準
左/右足首標準 足IKがONの時はY軸(ローカル)のみ操作するのが無難
左/右つま先標準
左/右足IK親
左/右足IK標準
左/右つま先IK

MMDモデルの表情モーフ(標準モーフ)

ボーンだけでなく、表情モーフにも標準(基本、または必須)モーフなどと言われる物があります。
こちらも厳密な定義があるわけではありませんが、このページではMMDに付属するモデルのモーフを標準モーフ、PMXEditorプラグインの標準モーフチェッカーでチェックできるモーフやニコニ立体ちゃんに実装されてるその他の表情モーフを準標準モーフとします。

表情モーフもモデルごとに実装されているモーフやモーフ名が異なるのでご注意ください。

MMD上では各モーフはモーフ名が同一なら、カテゴリ(左上(目)など)やモーフの種類(頂点モーフかグループモーフか、など)の違いは無視され、適用されます。
左上(目)説明
まばたき標準
はぅ標準
笑い標準
ウィンク標準 ”ウィンク”は半角の場合もある
ウィンク2 数字は全角,半角の場合もある
ウィンク右 ”ウィンク”は半角の場合もある
ウィンク2右 数字は半角の場合もある
なごみ
びっくり
じと目
なぬ!
キリッ 半角の場合もある
はちゅ目
ハイライト消し
瞳小 ”右下(その他)”に登録されている場合もある
右上(口)説明
標準
あ2 数字は半角の場合もある
標準
標準
標準
標準
ワ2 数字は半角の場合もある
にやり標準
にやり2 数字は半角の場合もある
にっこり
ω
ω□
はんっ!
えー
左下(眉)説明
真面目標準
困る標準
にこり標準
怒り標準
標準
標準
寄せ
右下(その他)説明
照れ
照れ2 数字は半角の場合もある
 ”左上(目)”に登録されている場合もある
瞳小 ”左上(目)”に登録されている場合もある
ぺろっ ”右上(口)”に登録されている場合もある

BlenderへMMDモデルのインポート/フレームの設定など


上記画像のオプションでインポートしました。
今回は物理は読み込みません。
拡大縮小:0.08にします。


[Ctrl]+[TAB]キーを押してポーズモードへ入り、スカートや髪ボーンなど邪魔なボーンを選択し[H]キーで非表示にしておきます。
[C]キーを押して円で塗りつぶし選択で簡単に複数選択できます。(マウスホイールクリックでボーン選択解除、マウス右クリックで円で塗りつぶし選択終了)

モーフのバインド


プロパティシェルフ(表示されていなければ3Dビュー上で[N]キーを押す)からMMDタブ→Morph ToolsからBindを選択してモーフをバインドします。
これは、”照れ”などの材質モーフやボーンモーフ、グループモーフを操作するのに必要です。(頂点モーフのみか、ボーンしか操作しないならしなくても良い)

フレームの設定やウインドウの配置など

フレームの設定など

右下の出力プロパティから、寸法開始フレーム0にします。
フレームレート30FPSにします。(MMDでは30FPSが標準のため)
下のタイムラインウインドウを[←]キーを押して0フレームにします。


タイムラインウインドウの再生から同期しないAV同期に変更します。
これでアニメーション再生時に処理落ちしても本来の再生速度で再生します。
ウインドウの配置
ウインドウの配置に関しては好み等もありますが、ドープシート(アクション)とグラフエディターがあると便利です。

以下、自分用のウインドウ配置設定

トップバーからAnimationタブを開きます。左上のエディタータイプアイコンをクリックしてエディタータイプをアニメーションドープシートにします。


ドープシートとなっているプルダウンメニューの右横の三本線のアイコンをクリックしてビュー表示範囲を同期にチェックを入れます。


下部ウインドウのエディタータイプアイコンをクリックしてグラフエディターを選択するか、マウスカーソルを下部ウインドウに持っていった状態で[Ctrl]+[TAB]キーを押します。


下部ウインドウのビュー表示範囲を同期にチェックを入れます。これでドープシートとグラフエディターの表示範囲が同期されます。

TIPS:
新規ではアクションは作成されていませんが、ボーンにキーを打つと自動的にアクションが作成されます。
mmd_toolsではアクティブな(選択されている)アクションが.vmdとして出力されます。

ボーンの操作方法

Animationタブではなく、Layoutタブになっていますが気にしないで下さい。


ボーンをクリックします。ポーズモードになっているはずですが、ポーズモードになっていない場合は[Ctrl]+[TAB]キーを押してポーズモードに入ります。


3Dビューの左側にツールバーが表示されているはずです(表示されていない場合は3Dビュー上で[T]キーを押す)


ツールバーの移動or回転を選択した状態でボーンをクリックし、ギズモまはたマニピュレーターと呼ばれるアイテムをドラッグして移動or回転させます。
赤色のラインが左右軸、青色のラインが上下軸、緑色のラインが前後軸となっています。


3Dビュー中央上部のグローバルとなっている所をクリックして開くと、移動or回転させる座標軸をグローバル座標かローカル座標か選択できます。


もう一つ、ボーンを操作する方法があります。


ボーンを選択した状態でキーボードの[R](回転) or [G](移動)を押した後に[X]or[Y]or[Z]を入力し、テンキーから数値を入力するか、マウスを移動させる方法です。

[R]or[G] → [X]or[Y]or[Z]を入力した後にもう一度同じ座標のキーを入力するとボーンに設定されたローカル軸で操作できます。(例:[R]→[X]→[X]→マウス移動など)

ボーンの座標軸(グローバル座標とローカル座標)

キーフレームの打ち方


一番簡単な方法は、任意のフレームまで移動してボーンを選択した状態で右クリックからキーフレームを挿入...を選択します。


キーフレーム挿入メニューが表示されるので、位置回転位置/回転のいずれかをクリックしてキーフレームを打ちます。
位置回転はそれぞれ位置のみか回転のみの情報のキーを打ちます。(例えば足IKなら位置、通常ボーンなら回転とか)

.vmdに出力するなら位置/回転を選んでおけば問題ないです。

ショートカットキーからは[I]キーを押せばキーフレーム挿入メニューが表示されるので、そこからキーフレームを打てます。

キーイングセット

ショートカットキー([I])を押してもいちいちキーフレーム挿入メニューが表示されてしまうので効率がよくありません。
キーイングセットを設定すれば[I]キーを押しただけでキーを挿入できます。


タイムラインエディターの上部、キーイングプルダウンメニューからアクティブキーイングセット:をクリックします。


LocRot位置/回転です。通常はこれを選んでおけば問題ありません。

メモ:
Rotaion→回転
Location→位置
LocScale→拡大縮小

ポーズ(.vpd)

アニメーションを作成する前に静止状態(.vpdポーズファイル)を作ってみましょう。
なお、.vpdポーズファイルでは表情モーフはサポートされていません。表情モーフも作って出力したい場合は.vmdファイルとして出力します。

ポーズを作る際のボーンの操作順は人によって違いますが、基本的には足IKセンター→()→下半身上半身頭など...→表情(モーフ)と体の中心から外側へ...と操作する事が多いようです。


AnimationタブからLayoutタブに戻ります。ポーズならLayoutタブの方が操作しやすいです。

ポーズを作ってみる

アメコミ 06 (ポーズ 980)/髪と形を参考にさせてもらい、このポーズを作ってみましょう。

アニメーションを作ってみる

単純なアニメーション

Fカーブ(MMDでいうところの補間曲線)



mmd_toolsでは、一定リニアベジエのみサポートしている。
ダイナミックエフェクトのバウンドなどや、グラフエディターのモディファイアを利用した場合はアクションのベイクでベイクする必要がある。

歩行モーション

パスに追従させる

.vmdへエクスポート

メッシュオブジェクトだけ選択しているとモーフアニメーションのみ、ボーン(アーマチュア)だけ選択しているとボーンアニメーションのみ出力されるため、エンプティオブジェクトを選択してエクスポートする(エンプティオブジェクトを選択して出力するとモーフとボーンアニメーションの両方が出力される)
Use Frame Rangeにチェックを入れる。
MMDモデルのインポート時に倍率を0.08にした場合はエクスポート時の倍率は12.5にする。

ノンリニアアニメーション(NLA)

アクションをストリップ化する事でNLAエディターでアクションをループさせたり、複数のアクションを組み合わせる事ができます。
(例えば歩行アクションと手を振るアクションを組み合わせて歩行しつつ手を振ったりなど)

ただし、mmd_toolsアドオンはNLAトラックをサポートしていないためストリップ化してしまうと新規アクションにベイクする必要があります。
この際、キーが全打ちされてしまうので.vmdファイルが肥大化し、配布する場合では貰った人が修正するのが困難になるなど弊害があります。
Simplify Curvesアドオンである程度キーを間引けますがその分、元の動きとは違ってきます)

キー全打ちでも構わないなら、複数のアクションが含まれるドラマの作成などに便利です。(歩行、ドアを開く、座る、など)
ダンスモーションなどは一つのアクションにしておいてストリップ化せずに出力する方が良いでしょう。

ストリップ化

新規アクションにベイク

動画のトレース

動画のfpsを30fpsにエンコードしてBlenderへ読み込ませる

カメラモーションの作成、出力

空の.vmd(モデルモーションでもよい)をカメラにインポートしてMMD_Cameraオブジェクト(エンプティ)を作成させ、MMD_Cameraオブジェクト(エンプティ)にキーを打って選択してエクスポート
(フレーム範囲に注意)

TIPS

ボーンの表示方法、座標軸の表示


ボーンを選択した状態でオブジェクトデータプロパティのビューポート表示から、ボーンの表示方法やボーンの名前、各ボーンの座標軸の表示の有無などを設定できます。

IKのON/OFF


ポーズやアニメーションを作る際に足IKなどを切りたい時もあるかもしれません。
その場合はサイドバーのその他から該当IKをクリックしてオフにします。(サイドバーが表示されていない場合は3Dビュー上で[N]キーを押す)

足などIKを含むボーンを動かすとグニャグニャになる場合

ボーンの反転コピー


ボーンの位置などを反転コピーしたい時は3Dビュー右上のアイコンをクリックして反転コピーします。
ボーンコンテクストメニューのX軸で反転させたポーズを貼り付け([Shift]+[Ctrl]+[V])では正常に反転コピーされません。
また、ボーンの位置や回転が反転コピーされただけでキーフレームは打たれていないので別途、手動でキーフレームを打つ必要があります。

Blender上で腕IKや握りボーンを追加する

操作しやすいようにBlender上で腕IKや握りボーンを追加します。
ただし、このページで解説する方法ではBlender上でしか作動しません(腕IKなどを追加したMMDモデルをエクスポートしてもMMDでは正常に作動しない)
MMD上でも作動する腕IKや握りボーンを追加したい場合は、IK Maker X(腕IK)や、GripsX2(握りボーン)プラグインをご利用下さい。

また、.vmdとして出力するならアクションのベイクを実行して標準ボーンに置き換える必要があります。
腕IK

ボーン(アーマチュア)を選択し、[TAB]キーを押してボーン編集モードへ入ります。
手首ボーンを選択し、3Dビューの左側のアイコン(表示されていない場合は3Dビュー上で[T]キーを押す)から押し出しをクリックして表示された+ボタンをドラッグし、手首ボーンから押し出します。
押し出す長さは適当でいいですが、あまりにも短いと選択しづらいので適度な長さにします。


ボーンプロパティから関係タブを開き、ペアレントの右のをクリックしてペアレントを解除します。


[Ctrl]+[TAB]キーを押してポーズモードへ入り、手首ボーンを選択します。
ボーンコンストレイントプロパティを開き、ボーンコンストレイント追加からインバースキネマティクス(IK)を選択して追加します。
ターゲット:にモデル名_armを、ボーン:に先ほど押し出したボーン(手首LorR.001となっているはず)を指定します。
チェーンの長さを肩または腕ボーンまで黄色い点線が伸びるように指定します。

ウェイト:回転は必要に応じてチェックを入れます(チェックを入れると手首が手首LorR.001ボーンと同じ方向に向きます)


手首LorR.001ボーンを選択し、[F2]キーを押してボーン名を手首LorR.IKとでもしておきます。
これで腕がIK化されました。
IKボーンを操作すると腕が動くはずです。

腕IKを動かすと腕やひじが変な方向に曲がってしまう場合

握りボーン

ボーン(アーマチュア)を選択し、[TAB]キーを押してボーン編集モードへ入ります。
手首ボーンを選択して[shift]+[D]キーを押してボーンを複製します。
適当な位置に複製したボーンを持っていきます。


ボーンプロパティから関係ペアレントの右の☓をクリックしてペアレントを解除します。


[TAB]キーを押してポーズモードへ入り、適当な指ボーン(ここでは人指3)を選択します。
ボーンコンストレイントプロパティからボーンコンストレイント追加回転コピーを選択して追加します。
使用空間:ローカル空間ローカル空間にし、ターゲット:をモデル名_arm、ボーン:を先ほど複製したボーンを指定します。


[C]キーを押して円で塗りつぶし選択でほかの指ボーンを追加で選択し、左上のポーズからコンストレイント選択したボーンにコンストレイントをコピーでコンストレイントをほかのボーンにコピーします。


[F2]キーを押して握りボーンの名前をわかりやすいものにしたら完成です。親指ボーンも同様の作業で親指握りボーンを作成すれば指のポーズ作りが楽になります。
”アクションのベイク”で標準ボーンへ置き換える
Blender上で作った腕IKや握りボーンにキーを打っても標準ボーンへ置き換えなければほかのモデルへ使えません。
”アクションのベイク”でIKや握りボーンの動きを(腕IKや握りボーンの影響を受けた)標準ボーンへ置き換えます。
ここでは握りボーンを標準ボーンの指ボーンに置き換えてみます。


置き換えたい(腕IKや握りボーンの影響を受けた)ボーンを選択します。


左上のポーズからアニメーションアクションをベイク...を選択します。
表示されたウインドウの選択ボーンのみビジュアルキーイングコンストレイントをクリアにチェックを入れ、開始フレームと終了フレームを指定してOKをクリックします。
※必要なら現在のアクションを上書きにチェックを入れて新規にアクションを作成せず、現在のアクションに上書きします。


握りボーンに打ってあったキーは削除されて選択していた指関連のボーンにキーが打たれます。
ご覧の通り、1フレームに1キー打たれています。
このままだと.vmdファイルが肥大化し、修正する場合も困難になるなど弊害があります。
Simplify Curvesアドオンでキーフレームをある程度は間引けますので詳しくはアドオンのページをご覧ください。

デフォルトの補間曲線の変更


トップバー上の編集プリファレンス...からBlenderプリファレンスウインドウを開き、アニメーションの項目からFカーブデフォルトの補間からデフォルトの補間曲線を変更できる。

Blender(3Dビュー)上での見え方とMMD上での見え方が違う場合(視野角、焦点距離)

Blenderで綺麗なポーズを作ったのに、.vmd(or .vpd)に出力してMMDに読み込ませるとなんだが違う...といった場合、視野角(焦点距離)の問題かもしれません。
視野角や焦点距離の詳細はまた別の機会として、Blenderの3Dビュー上でMMDのデフォルトである視野角30°にしたい場合は、3Dビューのサイドバービュー焦点距離44.7846mmにすればOKです。

メモ:
mmd_toolsを使ってカメラオブジェクトにカメラでない(通常の)モーション(.vmd)を読み込ませるとカメラオブジェクトの設定がMMDのデフォルト視野角(焦点距離)になる。

Menu

モデル/アクセサリ/素材など

Blender 2.9 LTS


※下記のページは古いものです

エンコード

コーデック

エンコード/動画編集ソフトウェアなど

その他

波形編集ソフト

管理人/副管理人のみ編集できます