今回は表情モーフを作っていきます
MMD モデルを作っているので、MMD 用になります
ソフトによっては
- シェイプキー
- ブレンドシェイプ
とも呼ばれますが、同じようなものです
表情作りを始めたばかりの頃は、作るのにとても苦労しました

じゃっく
狙った形を作るのがちょっと・・・
おまけに妙に時間もかかっていました
「もっとキレイに作りたい」
「なぜこんなにも難しく感じてしまうのか」
と、試作しながら自己分析したところ、ツールや機能を理解していないからだと感じました
まあ 要は部分部分で適した対応・操作ができていなかったのです
- 動かしたくない部分は非表示
- 既存のモーフを組み合わせたりする
など、やり方を変えてからは、比較的楽に作れるようになりました
自分の進め方が決まったので、いつもどおり作り方を残していきます
仕様
仕様と言いますか、モーフ作りに対する操作法です
簡単にまとめたのが、こちら
- 軸方向に動かしたい場合:Ctrl を押しながら動かす
- 小さく動かしたい場合:Alt + 矢印キーでチビチビ動かして対応
- 大きく動かしたい場合:フォールオフ機能や LW Brush というプラグインを使う
- 触れたくない部分がある場合:該当する面を選択して非表示にする
これらを駆使してモーフ作りをしていきます
準備
まずはモーフを作り始める前に、いくつか準備をします
ウェイト済みのモデルを用意

ウェイト付けが済んでいるモデルを用意します
複製するとウェイトも一緒にコピーされるので、この仕様を活用してモーフ作りを楽にします

じゃっく
なるべく作業が楽になるように考えます
必要なモーフを表に出しておく
次に必要なモーフを洗い出してみました
多ければ多いほど表現できる幅も広くなるのですが、ここでは必要最低限にしています
| 目 | リップ | まゆ | その他 |
|---|---|---|---|
| まばたき,blink | あ,a | 喜び,joy | 涙,tears |
| びっくり,surprise | い,i | 悲しい,sad | 照れ,shyness |
| ウインク右,wink_R | う,u | 困る,worry | |
| ウインク左,wink_L | え,e | 怒り,anger | |
| ウインク右2,wink2_R | お,o | まゆ上,eyebrows_up | |
| ウインク左2,wink2_L | まゆ下,eyebrows_down | ||
| じと目,scornful_eyes | |||
| 瞳小,small_pupil |
こちらが出してみたものです
だいたいこんなもんでしょうか?
日本語はよく目にする名前にしましたが、英語は好きなように付けています

じゃっく
必要なモーフがあれば追加します
手順
たくさんモーフを作っていきますが、どのモーフもだいたい流れは同じです
手順はこんな感じなっています
「モーフマップ」という入れ物を作って、その中でモーフを作ります
この時、間違って元のオブジェクトは触らないように気を付けます
最初に片側だけ作って、一旦鏡面コピーで両側同じ状態に
そして、あとから右側用と左側用に分ける、といった流れになっています
モーフマップを作る

例として、まばたき (blink) モーフを作っていきます
間違えて関係のないところを変形しないように、触れたくない面を非表示へ
- 白目
- 後頭部
- まつ毛のトゲ
非表示するには、ショートカットキー ー(ハイフン)でできます

じゃっく
この三つを見えない状態にしました
もう一度表示するには、ショートカットキー ¥ を押せば元に戻ります

「モーフマップ作成」から新しくモーフを作ります
名前を blink と入力
これは英語で入力します
※追記:モーフの場合はボーンと違って、日本語でも大丈夫っぽい( Blender と PMX Editor で確認しました)
選択肢として「相対」と「絶対」があります
基本的には相対のままで OK
モーフはベース以外にすると枠の色が変わるので、変わっていることを確認してから編集作業に入ります

じゃっく
間違ってベースを変形しないように注意
モーフの形を整える

ポイントを選択して、少しずつ形を作っていきます
二重まぶたも少し動かしました

じゃっく
ちょっとずつ、ちょっとずつ
こちらは作業の一部を動画にしたものです
古のやり方っぽいですが、結局この方法が安全でした
一気に動かすのが難しかったので、地道に動かして作りました

じゃっく
Alt + 矢印キーで小さく移動

ただの上下移動だったので、別の角度から見るとすき間があります
これをちょっとずつ修正
まつ毛のトゲ部分も表示して、傾きや位置を調整していきます

ここで一旦、目とハイライトを一緒に表示
貫通が発生していないか確認しておきます
もし貫通があったら、もう一度調整して直していきます
モーフを鏡面コピーする

「頂点マップの鏡面コピー」を起動
赤から緑へコピーを実行して、反対側を作ります
この機能、てっきりウェイトマップ用かと思いましたが、モーフの鏡面コピーにも使えました

じゃっく
UV マップにも使えるようです

これでまばたき (blink) が完成します
右用左用のモーフを作る

このまま右目用と左目用のモーフも作ります
新たにモーフマップを作成して、名前を wink_L と入力
これに「モーフ適用」で先ほど作った blink を強さ 100% で当てます

wink_L に blink と同じ形が適用されるので、「ボリューム選択」で片側を囲って「マップ消去」を実行
これで左目だけ閉じた状態になりますので、wink_L モーフが完成します

右目用のモーフ( wink_R )も、同じように進めれば簡単に作ることができます
動作確認

モーフの状態を確認
ちゃんと反映されていますね

じゃっく
問題なさそうです
これで三つのモーフができました
- まばたき
- ウインク右
- ウインク左
こんな感じで、他のモーフも作っていきます
通常パーツのモーフ
通常のパーツからモーフを作っていきます
以下の順番で進めました
実際はどこからでも始めても大差ないですが、目のモーフ作りから進めていきます
そのあとは、まゆ用のモーフを作成
最後にリップ用のモーフを作って完成、といった感じです
目のモーフを作る

まばたきを作ったときと同じように、地道にポイントを動かしながら作成

じゃっく
「モーフ適用」を活用すれば時短になります
まゆのモーフを作る

まゆ毛を上に動かしたモーフと、下に動かしたモーフを作ります
二重まぶたも一緒に動かすか少し悩みましたが、今回は動かさないようにしました

縦方向だけに動かすと、まばたきを作ったときと同じように、すき間やめり込みが発生します
別角度で確認しながら、ちょっとずつ修正

他のまゆ毛も同じように作成します

じゃっく
どんどんモーフを追加していきます
リップのモーフを作る

「あ」とか「お」のような口を開ける動作の口モーフに関しては、動かした時にアゴも連動します
下アゴを選択して回転ツールで、ちょっとだけ口を開けておきます

じゃっく
回転角度は 2.0° ~ 3.0° ほどにしました

移動ツールの「フォールオフ」やプラグインの LW_Brush を使って、口の形を整えます
整えたら歯と舌も表示
口の形状に合わせて位置と角度を調整していきます

じゃっく
舌と歯の調整は意外と忘れがちだったりします・・・

同じように他の口も作ります

じゃっく
あ、い、う、え、お、は基本モーフ
形がよく分からないものは、他の作者さんのモデルを参考にして進めてみました
追加パーツのモーフ
次は追加パーツ分のモーフを作っていきます
涙パーツ

涙モーフはボックスから簡単に作ります
作るときはモーフの項目が、ベースになっていることを確認
別レイヤーでボックスを細分化してボールを作ります

だ円形に形を変えて、目尻あたりに配置

モーフを新規で作って、涙モーフをグッと顔の中に押し込んじゃいます
これだと変形後が顔の中に押し込まれた状態です
なので、後でモーフの反転を行います
照れパーツ

照れパーツは、ベースの顔のポリゴンを一部を複製して作ります
画像のような範囲を選択して、別レイヤーにコピペ

移動ツールかノーマル移動(法線移動)で、ほんのちょっとだけ顔から浮かせます

新しくモーフを作って、涙モーフと同じように顔の中に押し込みます
これもベースに戻ると飛び出るので、あとでモーフを反転させます
追加パーツのモーフを反転
反転させる考え方
新しく作った涙と照れモーフですが、これはベースだと顔から出た状態です
モーフを実行した時に顔から出ているのが正常なので、モーフを反転させる必要があります
ただ、LightWave には一発でモーフを反転させるコマンドがありません
そこで「モーフ適用」の機能を利用して、反転させてみました

ベースにモーフを 100% で適用すると、モーフ結果と同じ形状になります
この時、モーフも影響を受けて 200% 変形した状態になります
ただ、モーフに自身と同じモーフをマイナス 200% 与えてやれば 0% の形状(ベースと同じ)になります
モーフ側を動かした場合は、ベースに影響が行かないので反転ができる、という考えです
涙モーフを反転

実際にやってみます
ベースに涙モーフ (tears) を 100% で適用
すると、涙が顔の中に入った状態のベースができます

今度は tears のモーフに切り替えて、自身と同じモーフをマイナス 200% で適用します
これでモーフ後に涙が顔から出てくるようになりました

じゃっく
反転成功!
こちらは動画にしてみたものです
照れモーフを反転

照れモーフも同じやり方で反転させます
これで必要なモーフができました
動作確認
モデラーで確認

頂点マップウィンドウにいっぱいモーフが溜まっているので、切り替えて確認
ついでにいくつかモーフも追加しました

じゃっく
モデラーモーフチェック、良し
レイアウトで確認

レイアウトでも確認してみます
モデルにモーフミキサーを追加

そして追加したモーフミキサーをモーフィングの一個下に持ってきます※おまけに理由を書いています

モーションミキサーを開いて動作確認
良いですね
もし口モーフを二つ動かしたときに、歯などが出てくるようなら修正します

じゃっく
レイアウトモーフチェック、おっけ
PMX Editor で確認

PMX Editor でも確認します
LightWave から Blender を通して持ってきました
ちゃんと英語名でモーフ情報が維持されていることが確認できますね
スライダーを動かせば、モーフも動いてくれます

じゃっく
ちゃんと動いてちょっと感動
これでモーフ作りは完了です
まとめ
それでは今回のまとめです
- モーフ適用を使えば反転ができる
- 触れたくない面はハイフンで非表示
- 軸方向に動かしたいときは Ctrl を使う
- 小さく動かしたいときは Alt+ 矢印キー
- 大きく動かしたいときはフォールオフを使う
- 「頂点マップの鏡面コピー」で両側が作れる
- モーフ情報は PMX に変換しても維持される
今回は表情モーフ作り( MMD 用)をやってみました
最初はごり押しでモーフ作りをしていたので、かなり時間がかかってしまっていました
機能をちゃんと確認していなかったのが、原因でした

じゃっく
よくよく考えたら当たり前な事だったのかも
今では比較的楽に作ることができます
「フォールオフ」機能やプラグインの存在も大きいです
モーフは今回少なめに作りましたが、また必要になったらどんどん追加していこうと思います
それでは、お疲れさまでした~
おまけ
モーフミキサーの位置について
これは追加の動作テスト中に気付いたもの
- ボーン入りの素体
- 涙に顔と同じウェイト
この条件で涙モーフを動かしてみましたが、なぜか涙の位置がずれちゃいました

じゃっく
えぇ・・・(困惑)
最初ウェイト付けを間違えたかなと考えてましたが、どうやら「モーフミキサー」の位置がいけなかったみたいです
「モーフィング」の一個下に置いたら、本来の位置に戻りました
モディファイアの位置が大事だったなんて・・・
しばらく気が付きませんでした
これからもモディファイアを使っていくと思うので、気を付けていきたいところですね
使用ツール
- 3DCG
- Blender
- PMX Editor
- LightWave3D
- 動画
- Bandicam
- ScreenToGif
