追記(2021/12/2)
調査の結果を反映して資料を作り直しました。GIFアニメーションつきで解説しています。
日本語版
hinzka.hatenablog.com
English version
hinzka.hatenablog.com
スマホだと表示が崩れます!上記記事内のリンクからGoogleDocsのファイルをご利用ください
|
シェイプ名 |
|
|
|
1
|
browInnerUp
▶ARKit資料
|

|

|
眉の内側を上げる
眉尻は動かさない
困った眉
|
眉に関連するシェイプキーは全部で4種
- browInnerUp
- browDownLeft / browDownRight
- browOuterUpLeft / browOuterUpRight
- noseSneerLeft / noseSneerRight
目の表情に関するシェイプキーは全部で3種
- eyeBlinkLeft / eyeBlinkRight
- eyeSquintLeft / eyeSquintRight
- eyeWideLeft / eyeWideRight
目のシェイプ3種だけでは目元の表情を十分にカバーできない
眉のや頬のシェイプキーに目元の動きも含めることでバリエーションを豊かにすることができる
眉の複数のシェイプを同時に動かしたとき、顔のメッシュに埋まらないように注意
browInnerUpでは眉尻の位置を維持する
browInnerUpとbrowOuterUpLeft/browOuterUpRightはそれぞれ100%で合成すると「自然に上がった眉(=びっくりした眉)」の形になる

(browInnerUp+browOuterUp)
|
2
|
browDownLeft
▶ARKit資料
|

|


|
左眉全体を下げる
訝しむ眉
|
browDownでは眉全体を傾斜しつつ下降させる

(browDown+browInnerUp)
上まぶたをわずかに押し下げる
上まぶたの動きは、まばたきと重なったときに目が埋もれて消えない程度にする
|
3
|
browDownRight
▶ARKit資料
|


|


|
右眉全体を下げる
訝しむ眉
|
同上
|
4
|
browOuterUpLeft
▶ARKit資料
|

|


|
左眉の外側を上げる
眉頭の位置は維持
|
browOuterUpでは眉頭の位置を維持する
上まぶたの目尻側をわずかに持ち上げる
browInnerUpとbrowOuterUpLeft/browOuterUpRightはそれぞれ100%で合成すると「自然に上がった眉(=びっくりした眉)」の形になる

(browInnerUp+browOuterUp)
|
5
|
browOuterUpRight
▶ARKit資料
|


|


|
左眉の外側を上げる
眉頭の位置は維持
|
同上
|
6
|
eyeLookUpLeft
▶ARKit資料
|

※眼球の動きはボーン制御です
|


|
左目の瞳を上に向ける
|
※ここでは参考のために眼球を動かしています。実際には眼球は動きません。
ボーン制御の眼球を持つモデルでは、シェイプキーに眼球の動きを入れてはいけません。
左の上まぶたの中央を見開く
下まぶたの中央を持ち上げる
頂点が中央よりになるほど変化量が大きくなるように、Surprised目のシェイプキーを合成
上瞼全体を一様に上げ下げするのではなく、中央部を重点的に動かすことで、眼球をみまわしたとき目元がなめらかに動く

|
7
|
eyeLookUpRight
▶ARKit資料
|


※眼球の動きはボーン制御です
片目だと見た目が怖いので両目を動かしています
|


|
右目の瞳を上に向ける
|
※ここでは参考のために眼球を動かしています。実際には眼球は動きません。
右の上まぶたの中央を見開く
下まぶたの中央を持ち上げる
同上
|
8
|
eyeLookDownLeft
▶ARKit資料
|

※眼球の動きはボーン制御です
片目だと見た目が怖いので両目を動かしています
|


|
左目の瞳を下に向ける
|
※ここでは参考のために眼球を動かしています。実際には眼球は動きません。
左の上まぶたの中央を下げる
下まぶたの中央を下げる
頂点が中央よりになるほど変化量が大きくなるように、Surprised目のシェイプキーを合成
中央部を重点的に動かすことで、眼球をみまわしたとき目元がなめらかに動く
|
9
|
eyeLookDownRight
▶ARKit資料
|


※眼球の動きはボーン制御です
片目だと見た目が怖いので両目を動かしています
|


|
右目の瞳を下に向ける
|
※ここでは参考のために眼球を動かしています。実際には眼球は動きません。
右の上まぶたの中央を下げる
下まぶたの中央を下げる
同上
|
10
|
eyeLookInLeft
▶ARKit資料
|

※眼球の動きはボーン制御です
片目だと見た目が怖いので両目を動かしています
|


|
左目の瞳を内側に向ける
|
※ここでは参考のために眼球を動かしています。実際には眼球は動きません。
左の目頭部分を見開く
目の頂点の中央から目頭側だけを動かす
頂点が目頭よりになるほど変化量が大きくなるように、Surprised目のシェイプキーを合成
変化量に傾斜をつけることで、眼球をみまわしたとき目元がなめらかに動く
|
11
|
eyeLookInRight
▶ARKit資料
|


※眼球の動きはボーン制御です
片目だと見た目が怖いので両目を動かしています
|


|
右目の瞳を内側に向ける
|
※ここでは参考のために眼球を動かしています。実際には眼球は動きません。
右の目頭部分を見開く
目の頂点の中央から目頭側だけを動かす
同上
|
12
|
eyeLookOutLeft
▶ARKit資料
|

※眼球の動きはボーン制御です
片目だと見た目が怖いので両目を動かしています
|


|
左目の瞳を外側に向ける
|
※ここでは参考のために眼球を動かしています。実際には眼球は動きません。
左の目尻部分を見開く
目の頂点の中央から目尻側だけを動かす
頂点が目尻よりになるほど変化量が大きくなるように、Surprised目のシェイプキーを合成
変化量に傾斜をつけることで、眼球をみまわしたとき目元がなめらかに動く
|
13
|
eyeLookOutRight
▶ARKit資料
|


※眼球の動きはボーン制御です
片目だと見た目が怖いので両目を動かしています
|


|
左目の瞳を外側に向ける
|
※ここでは参考のために眼球を動かしています。実際には眼球は動きません。
右の目尻部分を見開く
目の頂点の中央から目尻側だけを動かす
同上
|
14
|
eyeBlinkLeft
▶ARKit資料
|

|


|
左目を閉じる
トラッキングの際、まぶたの下降に伴う瞳の遮蔽を、iPhoneセンサーが瞳の下回転として検知する
このため、まばたきと同時に瞳がバウンドするような動きになることがある
|
通常の閉じ目
ここに、まばたきではなく「Joy目閉じ」を設定しておくと、フェイストラッキングで簡単に笑い目閉じができる(通常の閉じ目はできなくなる)
トラッキングによるアニメーションでは、目が閉じかけても瞳の回転は継続するため、
モデルによってはまばたき時に瞳メッシュがはみ出す場合がある
閉じ目のシェイプに瞳のスケールを入れることで貫通対策ができる
|
15
|
eyeBlinkRight
▶ARKit資料
|


|


|
右目を閉じる
トラッキングの際、まぶたの下降に伴う瞳の遮蔽を、iPhoneセンサーが瞳の下回転として検知する
このため、まばたきと同時に瞳がバウンドするような動きになることがある
|
通常の閉じ目
同上
|
16
|
eyeSquintLeft
▶ARKit資料
|

|


|
左目を笑顔にする
|
左の下まぶたを持ち上げて笑った目
ARKitのリファレンスでは瞳は閉じておらず、いわゆる『Joy目閉じ』ではないことに注意
閉じ目と合成されるため、単純にJoy目閉じを設定すると破綻する
フェイストラッキングのみで『Joy目閉じ』をつくるには
①「閉じ目」のシェイプ100%をマイナス
②「Joy目閉じ」のシェイプ100%をプラス
することで可能
ただし、円弧状の「Joy目閉じ」はフィクションなので、通常の目から変形させると中間で不自然な表情になりがち
フェイストラッキングではこの中間の表情が中心となるため相性がよくない。一瞬で切り替わるキー入力を採用したほうが無難
下まぶただけを押し上げると目の大きいキャラクターは顔の印象が変わってしまいがち(面長になる)
|
17
|
eyeSquintRight
▶ARKit資料
|


|


|
右目を笑顔にする
|
右の下まぶたを持ち上げて笑った目
同上
|
18
|
eyeWideLeft
▶ARKit資料
|

|


|
左目を見開く
|
左目を見開く
瞳の大きなキャラクターの場合、まぶたを開いただけでは白目の見え方が十分でない場合がある
瞳を縮小して白目が適度に見えるように調整する
|
19
|
eyeWideRight
▶ARKit資料
|


|


|
右目を見開く
|
右目を見開く
同上
|
20
|
cheekPuff
▶ARKit資料
|


|


|
頬を膨らませる
|
頬を膨らませるシェイプキー
正面から見てもわかるようにふくらませるとよい
唇は少し前に出る。とがらせると可愛い
狭めすぎるとmouthPuckerと同時に動いたとき破綻するので注意
狙って発動しやすい表情
mouthPucker以外の他シェイプと混ざりにくいためキメ顔を工夫しやすい
|
21
|
cheekSquintLeft
▶ARKit資料
|

|


|
左頬をもちあげる
|
左頬で笑顔を作る 頬の上昇に伴った動き
アニメ風モデルでは、頬全体を動かすより「口角」「下まぶた」などパーツを動かした表現のほうが破綻が少ない
横に伸ばすと笑ったときの口がのびのび広がる
このとき口角付近は伸ばさないほうが口の印象を維持できる
|
22
|
cheekSquintRight
▶ARKit資料
|


|


|
右頬をもちあげる
|
右頬で笑顔を作る 頬の上昇に伴った動き
同上
|
23
|
noseSneerLeft
▶ARKit資料
|

|


|
左の鼻と眉をしかめる
眉を顔の中心にぎゅっと寄せる表情
|
鼻をしかめる動きに付随した動きとして左眉をしかめる
眉頭を下げて寄せる
眉全体の位置は維持
browDownと合成されるので下げすぎに注意

(browDown+noseSneer)
|
24
|
noseSneerRight
▶ARKit資料
|


|


|
右の鼻と眉をしかめる
眉を顔の中心にぎゅっと寄せる表情
|
鼻をしかめる動きに付随した動きとして右眉をしかめる
同上
|
25
|
jawOpen
▶ARKit資料
|


|


|
口を開く
|
キャラクターの顔の印象を左右するシェイプキー
大きく口を開いた状態を設定する
この開きが小さいと口パクがあまり動かない
mouthCloseと対になり、双方100%のときに「顎を開けたまま口を閉じる」形になる。顎のみが動くことで咀嚼する動作となる

(jawOpen+mouthClose)
基本的に、歯を動かすのは顎にかかわるシェイプキーのみ
・jawOpen
・jawForward
・jawLeft
・jawRight
・jawOpenとmouthUpperUp/mouthLowerDownを合わせたシェイプが、縦方向の口の開きの最大値
・jawOpenとmouthDimple、mouthStretchなどをそれぞれ合わせたシェイプが、横方向の口の開きの最大値
|
26
|
jawForward
▶ARKit資料
|


|


|
顎を前に動かす
|
下顎全体が前に動く
顎と舌・下顎の歯を同時に動かす
|
27
|
jawLeft
▶ARKit資料
|

|


|
顎を左に動かす
|
下顎全体が左に動く
顎と舌・下顎の歯を同時に動かす
通常あまり動くことがなく、意識的にコントロールしやすい動きのため、特定の表情を意図的に発動させることも可能
|
28
|
jawRight
▶ARKit資料
|

|


|
顎を右に動かす
|
下顎全体が右に動く
顎と舌・下顎の歯を同時に動かす
同上
|
29
|
mouthFunnel
▶ARKit資料
|


|


|
ウの口
唇をとがらせてわずかに開き、閉じた歯を見せる
|
唇をつきだしてじょうごのように広げる形
サシスセソの歯を見せる表情を構成する
歯は一切動かさない
★キャラクター表現として、歯を極力見せたくない場合はこのシェイプキーに歯を隠す動きを追加
口角を狭めて鋭角にすると口元に力が入っている雰囲気が出る
唇をめくりあげて突き出す
舌先を少し持ち上げる(人がこの口の形をつくるとき舌先が縮まるため)
歯が埋まらないよう口内のメッシュを調整する
|
30
|
mouthPucker
▶ARKit資料
|


|


|
唇の横幅を狭める
|
唇の横幅を狭める
狭めた分、くちびるがふっくらして前に出る
mouthFunnelとの合成でキスの口になる

(mouthFunnel+mouthPucker)
jawOpenと合成したとき、口を細めた形状が縦に細長くなりすぎないよう注意
唇と同時に舌を狭める(口角の貫通対策)
|
31
|
mouthLeft
▶ARKit資料
|

|


|
口角ではなく、口全体を左に寄せる
|
口全体を左上に寄せる
歯は一切動かさない
舌のみを口に追従して回転させることで自然に舌を動かすことができる

(tongueOut+mouthLeft)
|
32
|
mouthRight
▶ARKit資料
|


|


|
口角ではなく、口全体を右に寄せる
|
口全体を右上に寄せる
歯は一切動かさない
舌のみを口に追従して回転させることで自然に舌を動かすことができる
|
33
|
mouthRollUpper
▶ARKit資料
|


|


|
上唇を噛む
|
特にトゥーン調のモデルではテクスチャが埋まると口自体が消えてしまう
上唇のエッジが見えている状態を維持しつつ唇を噛む形状をつくる
mouthRollLowerとセットで動作し、口元のもぐもぐした表情をつくる
実際に動くときはjawOpenが少し混ざるため、作成したシェイプよりは浅い動きになる

(mouthRollUpper+mouthRollLower)
|
34
|
mouthRollLower
▶ARKit資料
|


|


|
下唇を噛む
|
同上
|
35
|
mouthShrugUpper
▶ARKit資料
|

|


|
上唇をぎゅっと持ち上げる
|
上唇を持ち上げるシェイプ
mouthShrugLowerとセットで動作し、口元をしかめて閉じた「への字の口」を作る
さらにmouthPressと同時に動くと口元をぎゅっと引き結ぶ表情になる

(mouthShrug+mouthPress)
口角を引き下げる動きは、上唇・下唇に均等に分けると口角がガタつくため、上唇・下唇のどちらかにまとめて入れること
|
36
|
mouthShrugLower
▶ARKit資料
|

|


|
下唇をぎゅっと持ち上げる
|
下唇を持ち上げるシェイプ
mouthShrugUpperとセットで動作し、口元をしかめてへの字を作る
|
37
|
mouthClose
▶ARKit資料
|

|


|
顎を開いたまま口を閉じる
トラッキング上でこのシェイプが単体で動作することはない
口を閉じたまま顎を開閉することで、咀嚼する顎の動きになる

(jawOpen+mouthClose)
|
破綻したシェイプに見えますがモデルの異常ではありません
顎を開いたまま口を閉じる動作
jawOpenと対になり、双方100%のときに「顎は全開だが、口はぴったり閉じている」形になる
jawOpenの顔から、口の周りを選択して徐々に選択範囲を狭めながら口だけ閉じさせ、「顎が全開で口がぴったり閉じている」形に整える
この状態からさらにjawOpenをマイナスすることでmouthCloseのシェイプを作成できる
女性モデルは顎が伸びるとあまり可愛くないので、サンプルモデルFemaleでは顎の開きを控えめにしています


舌を出したとき下唇を貫通しないよう、舌先を上向きに移動
|
38
|
mouthSmileLeft
▶ARKit資料
|

|


|
左の口角を上げる
|
左の口角を引き上げた笑顔の表情
笑ったときの口の形を構成する(口角を鋭角・鈍角にするなど)
jawOpenと合成したとき自然な笑顔の口になること

(jawOpen+mouthSmile)
中央から単純に左右に分割すると不自然な動きになる
左右のシェイプを足して100%になるように変化量をグラデーションさせる
舌をやや下げる(人が強く舌を出すときは口角が上がるため)

(tongueOut+mouthSmile)
口角が上がることにより口全体が上にずれ、キャラクターとしての顔の印象が変わってしまうことがある
適宜口全体を下げ、位置を維持するようにバランスをとる
歯は一切動かさない
★キャラクター表現として、歯を極力見せたくない場合はこのシェイプキーに歯を隠す動きを追加
|
39
|
mouthSmileRight
▶ARKit資料
|

|


|
右の口角を上げる
|
右の口角を引き上げた笑顔の表情
歯は一切動かさない
★キャラクター表現として、歯を極力見せたくない場合はこのシェイプキーに歯を隠す動きを追加
同上
|
40
|
mouthFrownLeft
▶ARKit資料
|

|


|
左の口角を下げる
主に口を閉じた状態で動作する
|
左の口角を引き下げた不快の表情
jawOpenと合成したとき自然な口の形状になること

(jawOpen+mouthFrown)
|
41
|
mouthFrownRight
▶ARKit資料
|

|


|
右の口角を下げる
主に口を閉じた状態で動作する
|
右の口角を引き下げた不快の表情
同上
|
42
|
mouthDimpleLeft
▶ARKit資料
|

|


|
左の口角を後ろに引っ張る
開いた口をさらに大きく横に開く
|
左の口角を横に広げる
mouthSmileなどと合成した際に口角の形状を変えないためには、口角付近ではなく「唇の中央部分」を伸ばす

(jawOpen+mouthDimple)
|
43
|
mouthDimpleRight
▶ARKit資料
|

|


|
右の口角を後ろに引っ張る
開いた口をさらに大きく横に開く
|
右の口角を横に広げる
同上
|
44
|
mouthUpperUpLeft
▶ARKit資料
|

|


|
左の上唇を持ち上げ、歯をむき出す
顎を動かさずにmouthFunnel(ウの口)の状態で歯をむき出し、口を横に広げたときに最も歯がよく見える

(mouthFunnel+mouthUpperUp
+mouthLowerDown
+mouthDimple)
|
左の上唇を持ち上げる
歯は一切動かさない
下唇と比べて、人の上唇は口角部分がより大きく上がる
上唇全体が落花生のような形になる
中央から単純に左右に分割すると不自然な動きになる
左右のシェイプを足して100%になるように変化量をグラデーションさせる
jawOpenとmouthUpperUp/mouthLowerDownを合わせたシェイプが、縦方向の口の開きの最大値
|
45
|
mouthUpperUpRight
▶ARKit資料
|

|


|
右の上唇を持ち上げ、歯をむき出す
|
右の上唇を持ち上げる
同上
|
46
|
mouthLowerDownLeft
▶ARKit資料
|

|


|
左の下唇を引き下げ、歯をむき出す
|
左の下唇を引き下げる
歯は一切動かさない
上唇と比べて、人の下唇は中央部分がより大きく下がる
中央から単純に左右に分割すると不自然な動きになる
左右のシェイプを足して100%になるように変化量をグラデーションさせる
jawOpenとmouthUpperUp/mouthLowerDownを合わせたシェイプが、縦方向の口の開きの最大値
|
47
|
mouthLowerDownRight
▶ARKit資料
|

|


|
右の下唇を引き下げ、歯をむき出す
|
右の下唇を引き下げる
同上
|
48
|
mouthPressLeft
▶ARKit資料
|

|


|
口を閉じた状態で、左の口角をぎゅっと持ち上げる
アヒル口をつくると認識されやすい
|
左の口角を押し上げてつぶす
口をぎゅっとした時のみに動作するため、意識的にコントロールしやすい
猫口やアヒル口などのニュアンスを追加することができる

(mouthShrug+mouthPress 猫口バージョン)
猫口は、左右対称でないと歪な口元になる
あらかじめ用意した猫口シェイプを左右のmouthPressに均等に追加することで左右対称にできる
|
49
|
mouthPressRight
▶ARKit資料
|

|


|
口を閉じた状態で、右の口角をぎゅっと持ち上げる
アヒル口をつくると認識されやすい
|
左の口角を押し上げてつぶす
同上
|
50
|
mouthStretchLeft
▶ARKit資料
|

|


|
左口角を下に引き下げる
mouthFrownに比べ、口が開いているときにより大きく動く
|
左口角を引き下げて口をさらに開く
口を大きく開けたとき、口角が上がってしまうのに対して口角を下げてバランスをとるような動き
閉じた状態で口角を下げて作ると綺麗な動きになりにくい
jawOpen100%のシェイプから理想的な形になるよう口角を引き下げ、そこからjawOpenを‐100%することで適切な動きになる

(jawOpen+mouthStretch)
|
51
|
mouthStretchRight
▶ARKit資料
|

|


|
右口角を下に引き下げる
mouthFrownに比べ、口が開いているときにより大きく動く
|
右口角を引き下げて口をさらに開く
同上
|
52
|
tongueOut
▶ARKit資料
|

|
|
舌を出す
|
舌を唇からまっすぐに突き出す
口を開いたときに下方向に曲げる変形はjawOpenで行う
jawOpenと合成して舌が曲がったとき、アーチが下唇を越えられるように出幅を調整
|
以下はリサーチ経過の資料として残しています。
間違ってるところも多いのでそのうち整理します。
--------------------------------------------------------------
FaceID対応のBlendShapeリスト(Apple Developer Center)
モデリングソフトで52個の新規シェイプキーを追加します
一部のBlendShapeは、モデル標準のBlendShapeから形状をコピーして作ることができます(Blenderの場合 頂点メニュー「任意のシェイプキーを選択部に合成」)
おすすめ便利ツール
sort_shapekeys
Appleが定義したBlendShape文字列で空シェイプキーを52個一括作成できるアドオン
一部のアプリ・ツールは、この文字列が異なると動作しません。入力ミスを防ぐためにも便利なツールです
github.com
iFacialMocap
Blenderアドオンを使うと、Blender上で顔をリアルタイムに動かしながらBlendShapeを作成することができます
iFacialMocap
www.ifacialmocap.com
項目名からAppleDeveloperCenterの各項目にリンクしています
リンク先に各シェイプの参考図があり、具体的な形状を確認できます

眉関連
眉の内側を中心として眉全体を持ち上げる 眉尻の位置はあまり動かさない
左右の眉頭をすこし離すとリラックス感が出る
他のすべての眉シェイプキーと関連して動くため、合成したときの形状に注意すること
眉にかかわる他のシェイプキーは以下の3種
browDown(Left・Right)
browOuterUp(Left・Right)
noseSneer(Left・Right)
視線関連
ほとんどのVRMで、眼球そのものの動きはボーンにより制御されている
これらのBlendShapeの設定はなくてもよいが、ボーンの動きに伴って目元も変化させることでより自然な表情にできる
(動かしすぎると まばたき・笑い目と重なったとき破綻するので注意)
例:上下のまぶたをわずかに上げる
例:上まぶたをわずかに下げる
例:目頭側をわずかに開く
例:目尻側をわずかに開く
目
まばたき 目を閉じる形
モデル標準の閉じ目をそのまま流用可能
笑い目
モデル標準でよくある「完全に閉じた笑い目」だと、まばたきと重なったとき破綻する 閉じ方を弱める必要がある
キャラクターの個性によるが、下まぶたをしっかり持ち上げると印象的な笑い目になる
びっくり目
モデル標準のびっくり目をそのまま流用可能
頬
ほっぺプクー 空気が漏れないよう唇を閉じ気味にする
正面から見たときも膨らみがわかるよう、下方向にも膨らませるのがおすすめ
左右の頬だけでなく、口の部分も前に出す(歯と唇の間に空気を入れるイメージ)とよりかわいい感じになる
歯や舌を動かしてしまわないよう注意
口角を吊り上げる、口を横に広げる
Smileの口に動きを追加し、より大きな笑顔をつくる
笑ったときの口の形を決定する(口角を鋭角・鈍角にするなど)
鼻
鼻をしかめる 鼻自体は目立たないため動かすメリットは少ない
眉をぎゅっとしかめる動作として実装することができる 眉頭を下げ、眉を内側に寄せる(このとき眉全体の位置は変えないこと)
追加メッシュを使い、眉間にシワを追加するなどの演出も可能
ほかの眉シェイプキーと合成したときの形状に注意
特にbrowDown(Left・Right)と合成したときに眉が下がりすぎないこと
顎
顎を開いた状態の唇の開き、歯と舌の位置を決定するシェイプキー
口を開いた状態の歯の位置はここで設定する(他のBlendShapeでは動かさないこと!)
本来、上あごの歯は頭蓋骨に固定されていて一切動かないのですが
3Dモデルのウソとして上あごの歯が上に上がります
歯は目立たないほうが可愛い印象になります 上の歯をより上に・下の歯をより下に動かし、唇の裏に隠すのがおすすめ
口回りのあらゆるシェイプキーと関わってきます
・mouthPucker:メインの口のフォルムを形成する
合成したときに口が丸形・やや縦長 の形になること
・mouthClose:唇を閉じたまま顎をひらいたとき、あいてしまう口を閉じる
合成したときに口が閉じること
VRoidのMTH_Aの舌は丸めて収納されており、TongeOutで舌を出したときに口を開くと舌が自然に曲がってくれる
下顎・下の歯・舌を前に出す 上の歯は動きません
下顎・下の歯・舌を左に動かす 上の歯は動きません
舌だけ単独でさらに左に動かすと、じっさいに舌をうごかしたとき、自然にモデルの舌が動きます (人間は舌を横に動かすとき顎が動くため)
下顎・下の歯・舌を右に動かす 上の歯は動きません
舌だけ単独でさらに右に動かすと、じっさいに舌をうごかしたとき、自然にモデルの舌が動きます(人間は舌を横に動かすとき顎が動くため)
唇
唇を剥き出してじょうごのように広げる形
口がすこし開きます
歯は動かないので単体だと人を威嚇するような表情です
mouthPuckerと同時に動かすとキスの口になります
口の横幅を小さくすぼめ、唇が突き出る形 「う」の口
jaw openとともにメインの口のフォルムを形成します
「任意のシェイプキーを選択部に合成」を使うときれいに作ることができます
メッシュ全体を選択し、初期状態の顔にjawOpenの形状を+1で追加する
⇒唇の頂点を選択し、やや前方に出す
⇒唇の頂点を選択し、幅を縮めて縦長に整える
⇒唇の中央部分を選択し、プロポーショナル編集でX方向にやや拡大する
(これをしないと下唇が下に尖って▽のような口になりがち)
⇒メッシュ全体を選択し、jawOpenの形状を-1で削除する
左の口角を左上に持ち上げるように動かす
舌だけ単独でさらにXZ座標上で左に回転させると、じっさいに舌をうごかしたとき、自然にモデルの舌が動きます (人間は舌を横に突き出すとき口が動くため)
右の口角を右上に持ち上げるように動かす
舌だけ単独でさらにXZ座標上で右に回転させると、じっさいに舌をうごかしたとき、自然にモデルの舌が動きます (人間は舌を横に突き出すとき口が動くため)
上の歯に上唇をかぶせて丸め込む ものを口に含んでモグモグするときの形
下の歯に下唇をかぶせて丸めこむ ものを口に含んでモグモグするときの形
上唇をぎゅっと引き結ぶ形
mouthShrugLowerと同時に動かしてきれいに引き結ばれること
mouthFrownと同時に動いてへの字の口を形成する
下唇をぎゅっと引き結ぶ形
mouthShrugUpperと同時に動かしてきれいに引き結ばれること
mouthFrownと同時に動いてへの字の口を形成する
唇を閉じた状態でjawOpenで顎を開くと口がぽっかり空いてしまうため これを閉じるためのシェイプキー
逆に、jawOpenに対してmouthCloseが大きすぎると口が埋もれてしまう
jawOpenと同時に動かしたとき口がぴったり閉じること
「任意のシェイプキーを選択部に合成」で、jawOpenの形状を唇にマイナス値で適用
左の口角を引き上げて笑顔の口をつくる
笑ったときの口の形を決定する(口角を鋭角・鈍角にするなど)
jawOpenと合成したとき自然な笑顔の口になること
舌だけ単独で下に動かすと(MTH_Aなど口を開けたときの舌を流用)、じっさいに舌を出したとき、自然にモデルの舌が下に伸びます(人間は舌を伸ばすとき口角があがるため)
右の口角を引き上げて笑顔の口をつくる
笑ったときの口の形を決定する(口角を鋭角・鈍角にするなど)
jawOpenと合成したとき自然な笑顔の口になること
舌だけ単独で下に動かすと(MTH_Aなど口を開けたときの舌を流用)、じっさいに舌を出したとき、自然にモデルの舌が下に伸びます(人間は舌を伸ばすとき口角があがるため)
左の口角を引き下げ への字の口をつくる
口を開いた状態のときより、口を閉じた状態のときに大きく動く
mouthShrugUpper(上唇をぎゅっと引き結ぶ形)
mouthShrugLower(下唇をぎゅっと引き結ぶ形)と同時に動くことが多い
JawOpen、またはmouthShrugUpper・mouthShrugLowerと合成したとき自然な「不機嫌そうな口」になること
左の口角を引き下げ への字の口をつくる
口を開いた状態のときより、口を閉じた状態のときに大きく動く
mouthShrugUpper(上唇をぎゅっと引き結ぶ形)
mouthShrugLower(下唇をぎゅっと引き結ぶ形)と同時に動くことが多い
JawOpen、またはmouthShrugUpper・mouthShrugLowerと合成したとき自然な「不機嫌そうな口」になること
左の口角を奥側に引っ張る(横顔で確認)
横側から見たときの口の表情を形成する
右の口角を奥側に引っ張る(横顔で確認)
横側から見たときの口の表情を形成する
上唇を上に引き上げて上の歯を剥き出す
サシスセソの口がくっきりする 変顔もできる
作成時は上唇全体で作成し、最後に左右に分ける
このとき、顔の中央の頂点はそのままだと合成されて2倍のウエイトがかかってしまう
Basisのシェイプキーを0.5かけてウエイトを半分に減衰させること
下唇を下に引き下げて下の歯を剥き出す
サシスセソの口がくっきりする 変顔もできる
作成時は下唇全体で作成し、最後に左右に分ける
このとき、顔の中央の頂点はそのままだと合成されて2倍のウエイトがかかってしまう
Basisのシェイプキーを0.5かけてウエイトを半分に減衰させること
口角を押し上げてつぶす 口元の生々しい動きに寄与する
口元を猫っぽくするなど、ちょっとした演出に使える
口角を斜め下に引き下げつつ広げる
人間は口を開けていくと口角も上がるため、そのままだと笑顔の口になってしまう
上がった口角を下げて口を丸く整えるためのシェイプキー
これにより、口を大きく広げたときにのびのびと気持ちよく開くことができる
jawOpenと合成したときやや口角が下がること
舌
舌を出す
標準状態の舌をまっすぐ伸ばし、閉じた口から見えるサイズに調整する
以下、試行錯誤してみて効果的だった追加動作 ほかにもあるかも
jawOpen 下に曲げつつ下げる(MTH_Aの舌)
jawLeft/jawRight 左右に移動
mouthLeft/mouthRight 左右に回転
mouthSmileLeft/mouthSmileRight 下に曲げつつ下げる(MTH_Aの舌を追加)
パーフェクトシンク対応モデルにするには?
BlendShapeを作成したあと、さらにUnityで
BlendShapeClipを52個作成する必要があります
手動でぽちぽち作るのは大変なので以下のツールがおすすめです
Unityアセット
52個のBlendShapeClipを作成し、それぞれに同名BlendShapeを設定
52個のBlendShapeClipを作成し、それぞれに同名BlendShapeを設定