テクスチャ画像の濃淡に応じてオブジェクトの凹凸を作成する手順を紹介します。
概要
テクスチャ画像の濃淡に応じてオブジェクトの凹凸を作成したい場合があります。
古くからある方法の一つに、バンプマップ、またはバンプマップテクスチャと呼ばれる方法でオブジェクトの法線を変更して凹凸を表現する方法があります。
バンプマップを利用する方法で凹凸は表現できますが、実際の図形(ジオメトリ)の形状は変わらないため、ある程度の凹凸しか変更できません。
一方、この記事で紹介するディスプレイスマップを利用する方法は、テクスチャの濃淡に応じて実際のオブジェクトの形状を変更するため、深い凹凸も
表現できます。
この記事では、ディスプレイス モディファイヤを利用してオブジェクトに凹凸をつける方法を紹介します。
事前準備
ディスプレイスマップの画像を準備します。
今回は下図の画像を用意しました。
手順
シーンにボックスを作成します。
作成したボックスの上部の面のセグメントを増やします。これは、ディスプレイスモディファイヤが適用された際に、
面に凹凸がつくようにするためです。[長さセグメント][幅セグメント]の値を"64"に設定しています。
ウィンドウ右側のコマンドパネルの[修正]タブをクリックして選択します。[モディファイヤリスト]のドロップダウンリストボックスをクリックし、
リストの[ディスプレイス]の項目をクリックします。
ディスプレイスモディファイヤがモディファイヤスタックの枠に追加されます。
コマンドパネルの下部の領域の[パラメータ]ロールアウトの[イメージ]グループの[ビットマップ]の項目のボタンをクリックします。
(デフォルトでは[なし]のキャプションが表示されています。)
ファイル選択ダイアログが表示されますので、用意した画像を選択します。
ビットマップが選択された状態になります。
ボックスにはまだ、変化はありません。
コマンドパネルの[パラメータ]ロールアウトの[ディスプレスイメント]グループの[強度]の値を大きくします。
値を増やすと、凹凸がつく様子が確認できます。
ギズモの編集
凹凸のつく位置やサイズを変更します。ギズモを編集することで、位置とディスプレイスメントのサイズを変更できます。
モディファイヤスタック枠の[ディスプレイス]の項目をクリックして展開します。子要素に[ギズモ]の項目がありますのでクリックして選択します。
[選択して均等にスケール]ツールを選択し、ギズモの平面を縮小します。ディスプレイスメントの形状が小さくなることが確認できます。
[選択して移動]ツールを選択し、ふぃずもの平面を移動します。ディスプレイスメントの位置が変更できます。
輝度の中心を変更する
ディスプレイスモディファイヤのギズモを縮小すると、ディスプレイスメントの外側部分(画像の白い部分)が上に盛り上がっている様子がわかります。
希望する動作は、白い部分は変化させずに、黒い部分をへこませたいです。この場合、[輝度の中心]を編集して対応できます。
右側のコマンドパネルの[パラメータ]ロールアウトの[ディスプレスイメント]グループの[輝度の中心]のチェックボックスをクリックしてチェックをつけます。
白色の場合は凹凸がない状態にするため、[中心]の値を "1.0" (白色)に設定します。"0"に設定すると、黒色の場合に凹凸がなく、白色で盛り上がる状態になります。
デフォルトの"0.5"の場合は、灰色 (R,G,B)=(128,128,128)の場合に凹凸がなく、黒色の場合はへこみ、白色の場合に盛り上がる設定となります。
ディスプレイスメントの繰り返し
ディスプレイスメントを繰り返す場合の設定です。デフォルトでは画像1つ分のディスプレイスメントが適用されています。
[パラメータ]ロールアウトの[マップ]グループの[Uタイル][Vタイル]の値を変更します。両方の値を"2.0"に設定します。
ディスプレイスメントが縦横2個ずつ適用された状態になります。
"10"に増やした場合の結果です。
ギズモを調整して全面に適用することもできます。
レンダリング結果です。
補足:断面の粗さ
ディスプレイスメントマップでは、マップの形状に応じてエッジは増えないため、元のセグメントより滑らかな形状にはなりません。
そのため、ディスプレイスメントのエッジ部分では粗さが出ます。
レンダリング結果でも、ディスプレイスメントで急激に高さが変化するハードエッジ部分ではポリゴンの粗さが目立ちます。
対処方法としては、さらにセグメント数を増やす方法があります。
別の図形での例
別の図形での実施例です。
下図のディスプレイスメント用の画像を準備します。
円柱のジオメトリに、ディスプレイス モディファイヤを適用します。円柱の側面に適用するため、
ディスプレイス モディファイヤの[パラメータ]ロールアウトの[マップ]グループの設定を[円柱状]にします。
[Uタイル]の個数を4に設定し円柱の周囲に4つディスプレイスを適用します。
レンダリング結果が下図になります。セグメント数の関係で、ポリゴンの粗さが目立ちます。
著者
iPentecのメインデザイナー
Webページ、Webクリエイティブのデザインを担当。PhotoshopやIllustratorの作業もする。
最終更新日: 2022-09-25
作成日: 2022-09-25