Arnold5 ディスプレイスメントマップ実験遊び

どうも!Maya太郎です!

今回は新技紹介ではありませんが
少し前(半月ほど前)に紹介していたディスプレイメントマップ
動作検証として適当に遊んでいた過程を紹介します。

当時の記事で紹介している細かな設定の説明は
本記事で割愛している部分もあります。
それぞれの機能の働きなどは過去記事をご覧ください!
過去記事リンク(初心者向け) Arnoldでディスプレイスメントマップ①作業の流れ(⑥まで続編があります)


毎度の適当モデリング

ボックスプリミティブを適当に組み合わせて
凸凹感ある形状を作ります。
ベベルでエッジを落として
ブーリアン演算で結合します。
(この形状に深い意味はありません)

この作業
明確なモデリングイメージがないと、すぐに飽きるので(汗)
ZBrushに持っていってブラシ操作で遊ぶ事にしました。
右足としてインポートしたものを下図のように複製して全身を作成。
胴体部分はなじませるためにブラシを多用したので
ディテールがつぶれてしまいました。

実はもっといろいろ作りこんでいたのですが
調子に乗って分割レベルを上げた瞬間
PCのメモリーを食いつぶしてしまい、リセット以外受け付けなくなり作業データがぶっ飛びました。
(残っていたデータはかなり以前の状態)
再度作業する気力も無く、このままでいいやと次の段階に行きます。

ZBrushの作業なので割愛しますが
ローポリのデータとハイポリのデータを用意します。
この差分をディスプレイスメントマップとして書き出すというわけです。

UV展開も自動任せなので、効率よく配置できていませんが
このようなグレースケールの高さデータが作成されます。
最近のソフトは大抵このようなことが出来ます。(ディスプレイスメントマップへの転写)
Mayaにも同様の機能がありますが、ちょっと使いづらいので
他のソフトですることがほとんどです。
(分かりやすいよう明暗差を強調しています、32bitの画像だと、もっと明暗差の無い地味な画像になっています)

 

Mayaにインポートしたローポリ側のモデル。
ZBrushで見るよりも貧相に感じます。

ポリゴンのソフトエッジ処理をしました。
6万ポリゴンのモデルですがエッジ部分がかなり溶けた様になっています。

 

このままレンダリングすると、こうなります。

ディスプレイスメントマップを適用します。

 

さきほどZBrushで作成したテクスチャーを読みこみます。
カラースペースは「RAW」に切り替えます。

 

オブジェクトのアトリビュートから
サブディビジョンレベルを上げておきます。
ディスプレイスメントの細部の表現性は
ここの分割数に影響されます。(上げ過ぎ注意)

 

このように爆発したような結果…誰もが通る道

ディスプレイスメントマップは
適用直後にいろいろと調整する場所があります。
慣れれば簡単です。
だいたい下図の赤線あたりの調整になります。

スケールを調整すると
膨張具合が軽減するので適正値にあわせます。
しかしまだ全体に膨張気味な感じがぬぐえません。

各種ソフトの自動生成されるディスプレイスメントマップは
ベース平面の高さレベルが
(ディスプレイスメントマップ画像の)50%グレーの位置を基準にしている場合が多いので
Scalar Zero Valueを0.5にすると、膨張具合が適正化されます。

■補足■
Scalar Zero Valueを0.5が適切なのは
ディスプレイスメントマップの背景ベタ部分の濃度が50%グレーの場合です。
黒背景素材の場合は、0のままでOKです。

 

 

この作業で、ZBrushのこのディテールが再現されているはずなんですけど…

 


後はマテリアル設定でごまかす

久しぶりにCurvature(曲率)シェーダーを使います。
このシェーダーの詳細説明も過去記事でご覧ください!
過去記事リンクArnold 5 Curvature(曲率)シェーダーで「さび」を表現する(前編)(続編もあります)

ベースカラーへのマッピングとして使います。

ベースカラーとして接続しているので
オブジェクトの凸凹(正確にはエッジ部)
が白黒として表現されます。

Curvatureの設定値を調整して
白の部分が際立つように調整します。

Curvatureをベースカラーだけでなく光沢やラフネスに接続すると
面白い表現が出来そうですね。
とりあえず、試作中シーンに放り込んで今回は終了!


結論

適当に遊んでいたら、なんだかよくわからないものができました。
こういう経験を積み重ねることで、
そのうち狙い通りのものが作れるようになるでしょう!(と信じています)

 

では!