DAZ 3D Studio で、水着や下着の肌への食い込みを表現したかったので、HD モーフを作ってみようと思ったのですが、HD モーフを DAZ にインポートできるのは PA 会員に限られているそうで … D-Former や Push Modifier もメッシュの解像度が Base でしか機能しないので、諦めるしかないかなと思っていたのですが、DAZ のフォーラムで変異マップ ( Displacement Map ) を使ってみたら?というスレがあったので、試しにやってみることにしました。
そして完成したのが下記の画像です。

ポリゴンはいじらずに、テクスチャだけでビキニの肌への食い込みを表現することができました。 今回はこれの作り方を紹介したいと思います。
使うツール
- Blender などの 3D モデリングソフト
- Photoshop などの画像編集ソフト
変異マップ ( Displacement Map ) とは?
DAZ で遊んでる人ならバンプマップや法線マップについてはご存知だと思います。 変異マップもバンプマップ同様「高さ」を表現できるマップです。 バンプマップは表面の凹凸を表現することはできますが、オブジェクトのシルエットには影響を与えません。 まくまで表面の見た目が、凹凸があるように見えるだけです。

対して変異マップは表面の凹凸はもちろん、シルエットも変化します。

詳しくは CG WORLD.JP さんの「テクスチャマップの理解」などを呼んでみると理解が深まると思います。
変異マップ作成用のガイドを作る
今回は水着の食い込みを表現したいので、フィギアの胴体 ( Torso ) 用の変異マップを作成します。 でも水着の位置がわからないとどうしようもないので、水着の位置を示すガイド画像から作成します。 この画像を作るのに今回は Blender を使いましたが、3D ペイントができるソフトなら何でも OK です。
まずは DAZ Studio からフィギアと水着をそれぞれエクスポートし、Blender にインポートします。 DAZ からフィギアをエクスポートするときは、Write UV Coordinates にチェックが入ってることを確認してください。

Blender にインポートしたら、作業画面をふたつにしておくと作業を進めやすいです。 ひとつは 3D ビュー、もうひとつは UV 画像エディターにしておきます。

画像の新規作成
まずはガイド用に新規に画像を作成します。 UV 画像エディターの「新規」を押して、新しく画像を作ります。 画像の名前は「Guide」としました。 サイズは 4096 × 4096 にして OK を押します。

3D ビューの方でフィギアを選択し、編集モードにします。

Face の UV マップがテクスチャ上にあり、その右横に Torso の UV マップがあるので、UV マップを左に 4096 px ずらします。 UV 画像エディターで、作成した画像を選択してから A キーで UV マップを全選択します。 そのまま G キー ( 移動 ) → X キー ( X 方向 ) → -4096 と入力すれば、下記のように左に 4096px ずらすことができます。

続いて 3D ビューの方を「テクスチャペイント」にします。 ツールパネルのスロットを開き、ペイントモードを「画像」に、キャンバス画像を先ほど作成した「Guide」に設定します。

3D モデルにペイント
準備ができたらツールから色やブラシサイズを設定し、3D ビュー上のフィギアにペイントしていきます。 水着の位置がわかればいいので、おおまかに輪郭をなぞるようにペイントしていきます。 「対称」にある X ボタンを押しておけば、左右対称にペイントすることができますが、水着によっては左右対称に見えて、実はズレてる … といったものもあるので注意が必要です。

画面右側の 3D ビューでペイントしたものは、左側の UV 画像エディター上のテクスチャに書き込まれていきます。
つづいてボディーのどの辺りを出っ張らせるかのアタリをつけておきます。 食い込み表現は水着の部分をへこませるのではなく、周りを出っ張らせることで表現していきますので、その範囲のアタリをつけておくとあとで作業がしやすいです。

出っ張らせる範囲を大雑把に緑色で囲んでみました(おへそは目印に書いただけでです)。 つづいて一番盛り上げる、膨らみのピークの部分のアタリもつけておきます。

一番盛り上げる部分を青色で塗ってみました。
最後に「画像を別名で保存」から画像を書き出します。

Photoshop などで変異マップを作る
書き出したガイド画像をもとに、Photoshop などで下記のような変異マップを作っていきます。

50% グレー ( R 128, G 128, B 128, #808080 ) の部分は変化しない部分です。 それより暗い部分は凹み、明るい部分は出っ張ります。 今回は凹みはないので、50% より暗い部分はありません。 出っ張らせたい部分を明るくしていきます。
まずはガイドを元に水着の形を起こします。

次に出っ張らせる部分をエアブラシなどで明るくしていきます。 膨らみのピークを一番明るくし、徐々に薄くしていきます。

最後に水着のシェイプを若干ぼかし、マスクすれば完成です。

完成したら JPEG で書き出します。 微調整は DAZ Studio で表示を確認しながら行います。
変異マップをフィギアのサーフェスに設定する
ここからは DAZ Studio での作業になります。 水着を着用したフィギアを配置し、フィギアを選択しておきます。 Surfaces ペインで、Surfaces → Torso → Geometry → Displacement とたどっていきます。

Displacement Strength に作成した変異マップを割り当て、スライダーを調整します。 デフォルトでは 2.0 がマックスなので、リミッターを解除して 3.5 ほどにしました。 大きくするほど凹凸がおおきくなります。
表示の確認は Iray ビューで行います。

下記のように表面の凹凸はもちろん、シルエットも変異マップにより変化してるのが確認できます。

あとはしっくりくるようにテクスチャを調整して完成です。
保存はマテリアルプリセットで
変異マップを適用したマテリアルは、マテリアルプリセットで変異マップの設定部分だけを保存することができます。

File → Save As → Material(s) Preset から、Torso → Geometry → Displacement にだけチェックをいれて保存します。
今回テクスチャを作った水着は Hongyu’s Bikini for Genesis 8 Female(s) になります。 下記リンクから作成したテクスチャをダウンロードできますので、同じ水着をお持ちの方はよかったらお試しください。 うちの子用に作ったものなので、他のフィギアに合うかどうかはわかりませんが、効果は確認できると思いますので …。
テクスチャはビキニの上下両方、上のみ、下のみの 3 枚あるので、使い分けてください。
Hongyu’s Bikini for G8F Displacement Map – Download From Google ドライブ
mariderさんからのコメント
Blenderの勉強始めよっかな・・・(^^)
ちなみにUVは同じなのでG3Fにも流用できましたよ!
Noriさんからのコメント
mariderさん、コメントありがとうございます!
Blender覚えると表現の幅が広がって楽しいですよ!