前回ボーンを入れた髪ですが、フィギアのポーズによってはポリゴンの歪みが発生してしまいます。
これはウェイトによる歪みではなく、DAZ Studio の JCM ( Joint Controlled Morphs ) によるもの。 Joint Controlled Morphs というのは、関節を動かしたときに連動して作用するモーフのことです。 例えば肩を動かすと、それに連動して髪の形状が変わります。
※ JCM は髪だけじゃなく服などのフィギアベースのオブジェクトに使われています。
下記の画像では腕や肩の動きにあわせて、髪の形状が微妙に変化しているのが確認できます ( 下記は歪み修正後の画像です )。
この JCM は特に自分で作成していなくても DAZ Studio が自動で作ってくれますが、自動生成のため歪んでいる場合も少なくありません。 冒頭で紹介した画像は自動生成された JCM ですが、前述したとおりにポリゴンの歪みが発生しています ( 服の場合は肌が突き抜けたりする場合もあります )。 今回はこの髪の歪みを修正していきたいと思います。
JCM の確認
まず、どのような JCM が作られているのか確認してみます。 前提としてフィギアに何かしらのポーズをとらせます。 下記は Pose Controls の、左腕を上にあげるポーズです。
Parameters ペインを右クリックして、Show Hidden Properties を選択すると、隠しモーフが表示されます。 Scene ペインで髪を選択すると、Hidden → Correctives の中にたくさんの JCM のモーフがあるのを確認できます。
JCM はポーズをとらせたときに作られるらしく、デフォルトのポーズのときには存在しません。 なので何らかのポーズをとらせたあとでないと隠しモーフにも表示されません。 これら JCM のスライダーを操作すると、どのように形状が変化するかを確認できます。
必要のない JCM を無効化する
たくさんの JCM がありますが、歪みが発生するくらいなら必要ない … というモーフもあります。 今回はそのようなモーフがいくつかあったので、無効化してしまうことにしました。 無効化するのは簡単で、そのモーフの歯車アイコンをクリックして、Parameter Settings を開きます。
下記のようなウインドウが表示されるので、Auto Follow のチェックを外します。
こうするとモーフがポーズと連動しなくなります ( 0 のまま動かない )。 ただしこれだけでは再起動したときに再び有効になってしまうので、モーフを上書き保存しておきます。
File → Save As → Support Asset → Morph Asset(s) を選択します。 下記のようなウインドウが開くので、保存したいモーフにチェックをいれて Accept を押します。
外部ソフトで JCM を作って上書きする
次にモーフ自体を外部ソフトなどで作成し、自動生成された JCM に上書きしてみます。 今回の髪では、下記の 3 種類、左右で計 6 つのモーフを作成してみました。
- pJCMCollarUp_55_L (R)
- pJCMFlexCollarUpperBack_L (R)
- pJCMSholdrUp_90_L (R)
全部肩周りで、肩を後ろに反らせたり、腕を大きくあげたりしたときに作用するものです。
歪んだものを修正するのは大変なので、ベースの髪を Blender などで変形させて似たような形状に仕上げます。
あとはこれを obj として書き出して、Morph Loader Pro で読み込み、既存の JCM に上書きします。 やり方は、ひとつ前の記事の中の「自動生成されるモーフの歪みを修正」で紹介したのとほぼ同じなので、今回は省略します。
これで髪の歪みは無事解消されました。