10cebox -じゅーすぼっくす-

人生は、ジュースのように甘酸っぱい。

blender 勉強日記 11日目 シェイプキーの左右反転

 

f:id:umux_24:20210211145922p:plain

だいぶ更新が滞りました。

いろいろ書けるネタはたまったので、2月はいろいろ書いていきたいな。

 

ということで前回の続き、片目のシェイプキーを作ったところから。今回はこれを利用してもう片目のシェイプキーを作るところから。

 

 

 

まずは、作成した片目用シェイプキーを複製する。

めんどくさくない方法は、ミックスシェイプを利用すること。

ミックスシェイプは現在モデルに適用しているシェイプキーの状態をもとに新しいシェイプキーを生成する機能で、複数のシェイプキーをブレンド具合を調整しながら簡単に合成することができる。

これを応用して、左目シェイプキーの値を1、ほかをすべて0にした状態でミックスシェイプの作成をすれば、左目シェイプと同じシェイプキーを複製することができる。

 

f:id:umux_24:20210211164946p:plain

ミックスシェイプを作成

 

これで複製した左目のシェイプを、「シェイプキーをミラー反転」で右目のシェイプにするというのが基本の手順。ミラー反転は2種類あるが、トポロジーと書いてあるほうを使用する。ただ、これですべてうまくいくわけではなく、(おそらくメッシュ削減の影響もあると思われるが)一部のメッシュでミラー反転に失敗する。ちなみに、あくまでシェイプキーの反転であり、メッシュは反転されないため、オッドアイの目の色が逆転したりすることは無い。

f:id:umux_24:20210211190225p:plain

トポロジーと書いているほうのミラー反転を使用する

f:id:umux_24:20210211190314p:plain

右下のステータスバーにもある通り、一部のメッシュが反転できていない。

f:id:umux_24:20210211190754g:plain

対称となるトポロジーが見つけられないメッシュでは、位置の反転が発生してしまう。また、よく目を凝らしてみてみると、顔全体が微妙に動いている。

発生している問題を整理すると、

1. 一部のメッシュが「位置反転」となってしまっている

 → 目のハイライトのメッシュ、舌のメッシュ

2. 一部のメッシュが右目側に移っていない

 → 左の白目のメッシュ

3. その他、本来移動しないメッシュが、微妙に移動している

 → 顔全体

 

推測ではあるが 1. は、VRoid出力時に透明メッシュの削除をかけたことで、メッシュの対称性が失われたことによるものと思われる。 3. は VRoid のモデルがそもそも軸に対して微妙にずれているためとみられる。 2. はおそらく 1. と原因は同じだと思うが、ポリゴン削減がかかっている部位とも思えず…。謎。

 

これらの問題に対して、今回は、以下のアプローチで解決する。

1. 位置が反転してしまっているメッシュについて

 → 表情に影響するパーツではないため、該当箇所だけをニュートラルなシェイプキーで上書きする。

2. 左右反転ができていないメッシュについて

 → 失敗しているのは白目のメッシュで、表面の肌はきちんと左右反転ができており、見た目上の影響がないため、左側に取り残された白目のメッシュをニュートラルなシェイプキーで上書きすることで解決する。右目の白目メッシュはあきらめる。

3. 微妙にメッシュが移動している

 → 1. および 2. を解決したシェイプキーを、ニュートラルをベースに作成したシェイプキーに右目メッシュだけ移植することで解決する。

 

ということで、まずは 1. と 2. をニュートラルシェイプキーから上書きする。

方法は、編集モードにてシェイプキーを選択後、問題の頂点を選択し、「頂点」から「任意のシェイプキーを選択部に合成」を行えばよい。どのシェイプキーを選ぶかは、このメニューの選択後に左下に出てくるメニューで行うが、これをせずにどこか別のところをクリックしたりすると確定されてしまうので、注意すること。

合成するニュートラルシェイプは「Basis」というもの。ただ、デフォルトではシェイプキーを足し合わせるモードになっており、このままBasisを合成しても何も変わらない(どんな数でも足す数が0なら結果が変わらないみたいな感じ)。今回は上書きするので、「追加」のチェックをはずすこと。

f:id:umux_24:20210211195953p:plain

問題の頂点の選択は、少しシェイプを足してみたり、Lキー(独立したメッシュを一括選択)を活用するとよい

f:id:umux_24:20210211200801p:plain

メッシュはBasisを選択、追加のチェックは外すこと

f:id:umux_24:20210211202343g:plain

一応自然に見れる形にはなった

残る問題であるメッシュが微妙にずれる点は、Basisを複製した新しいシェイプキーに、ここまでで作ってきた右目のシェイプキーの可動部分だけを合成すれば解決可能。1,2 と同様に動いていないメッシュにBasisを合成する方法もあるが、大部分を占める非可動部分を上書きするより、何も動かさない空っぽのシェイプキーに右目だけ移したほうが早い。

注意すべきは、まばたきする右目自体もシェイプのずれの影響を受けているので、違和感が無くなるように位置調整をかける必要がある。ここはどうしても手動調整になるので、がんばろう。

 

 

f:id:umux_24:20210211203206g:plain

完成した右目

 

これで左目用シェイプキーを右目用に移植できた。あとは、両目用のシェイプキーや笑顔向け一括シェイプキー等をミックスシェイプで作成・置き換えをすれば、VRoidの笑顔表情の改造が完了となる。