今回はテクスチャをmayaのアーノルドを使ってディスプレイスメントマップを適用して立体感のある画像を作る方法を記事にしました。サクッと立体感のある表現をしたい時に使えます。
今回使う画像はこちらです。
ディスプレイスメントマップとして使う画像は白黒の凹凸があると石がボツボツと気持ち悪くなるので、フォトショップでグレーに塗ってこのように加工しました。本当ならもっと綺麗にしなくていはいけませんがとりあえずの画像です。
凸にしたくないベース部分は黒で、白い画像部分が飛び出して表示されます。
それでは作っていきます。まずはプレーンで板を用意します。ディスプレイスメントマップはUVが展開されてないと表示されないので注意してください。
aiStandardSurfaceを作り
colorから、先ほど作ったディスプレイスメント用の画像を適用させて
- ハイパーシェードからaiStandardSurfaceを選んで
- 矢印ボタンをクリック
- その下に表示されるノードの1番右をクリックします。
gifで見るとこんな感じです。矢印を押すとシェーダーのノードが表示されます。
ディスプレイスメントマテリアルの右のチェッカーをクリックして
ファイルからdisplacement用に作った画像を選びますが、16bitや32bitなどに解像度の大きな画像があると綺麗に表示されます。そしてjpegよりtiffの方が画質が良いです。
ディレクショナルライトを適当に置いて
レンダリングしてみると、ガクガクなので調整が必要です。
アウトライナーから作ったplaneのモデルを選択すると
アトリビュートエディタに表示されるShapeからArnoldの中にある
Subdivisionのこちらの項目を変更します。
Iterationsの数値を上げると形がしっかり出てHeightの数値を上げると凸が大きくなります。詳しくはDisplacementのページをみてください。今回の設定はとりあえず5にしましたが、数値が大きとレンダリング時間も長くなります。
それと3番キーでスムースをかけてあげます。
レンダリングしてみるとしっかり凹凸が出ているのがわかります。ちなみに面倒臭い時はカラーマップをディスプレイスメントにとりあえず貼り付けても立体感は出てくれます。
ディスプレイスメントまとめ
- UV展開されてるモデルを用意する事
- 3番キーでスムースを掛けている、掛けれるモデルになっている事
- モデルのアトリビュートからdisplacementを調整する
- テクスチャ用意する
テクスチャの立体感をモデルに変換する方法
また、ディスプレイスメントで設定した今回の設定をモデルとして書き出す方法がありますが、そちらは有料記事の方にまとめているのでよければ読んでみてください。