Rhinocerosの座標系にはXYZの他にUVというものがありますが、あまり意識しなくてもある程度モデルデータは作れてしまいます。一体何なのでしょう。
このUV座標は3Dモデルにテクスチャをマッピングする時に、画像の位置や方向などを指定するために使われています。UVマッピングと呼ばれ、横方向の軸がU、縦方向の軸がVで表された2次元の直交座標で、CGで扱われるマッピング技法の多くで使われています。
前々回、前回の記事ではUVマッピングについての説明がなかったので、実例を踏まえて少し触れたいと思います。
このモデルを使っていきます。
法線マップはこの2つです。
法線マップを設定するために、赤がロゴマーク、青が鎚目として3パーツに分割して、それぞれUVマッピングを編集していきます。
まず赤のロゴマークから作業していきます。
UVEditorコマンドで編集していきます。オブジェクトを選択した後にUVマップを四角形に展開するよう促されるので、作業しやすいようにモデルの近くに展開します。
UVエディタのダイアログボックスからテクスチャを使用にチェックして、ファイルからインポートをクリックして法線マップ画像を読み込みます。
展開元オブジェクトのロゴマークが縦に潰れたように表示されています。これはUとVが入れ替わっているのが原因ですので、UV展開されたメッシュをRotateなどで回転させます。
90度回転で正しい向きに変更しました。
次にロゴマークが左右反転しているのを修正します。
Scale1DやMirror(オプション設定のコピー(C)=いいえ)などでUV展開されたメッシュを左右反転します。ガムボールのスケーリングハンドルに-1と入力しても出来ます。
ロゴマークの高さを調整します。UV展開されたメッシュをScale1Dなどでテクスチャ画像のロゴマークに収まるくらいにY方向に縮小します。
綺麗にマッピングされるように編集できたので、UVエディタのダイアログボックスから適用をクリックして閉じます。
次に青の槌目の作業していきます。
UVEditorを開いてダイアログボックスから鎚目のテクスチャを読み込みます。
鎚目が横に伸びている以外はよくわからないので、使用するテクスチャをGradient Textureに変えます。
テクスチャは上が黒から下が白のグラデーションなのに対して、展開元オブジェクトは上下反転しているようなのでY方向に反転させます。
使用するテクスチャをChecker Textureに変えて、編集をクリックします。新たにダイアログボックスが立ち上がるのでマッピングの繰り返しVを2.0にします。
繰り返し設定が反映されて、テクスチャが変わります。
チェック柄が左右反転しているようなのでX方向に反転します。
チェック柄の縦幅が均等では無いので修正します。UV展開されたメッシュは制御点表示の切り替えが出来るのでPointsOnさせて制御点をMoveやSetPtなどで移動します。
UVマッピングの調整が出来ました。
次にマッピングの繰り返し設定をしていきます。
テクスチャを鎚目の法線マップに切り替えます。
編集をクリックして、繰り返しUを10.0、繰り返しVを0.3に設定します。
実際は数値を試しながら決めていくことになると思います。繰り返し設定はテクスチャ側の設定ですが、UVマッピングの編集と合わせて設定値をあらかじめ探っておくと良いでしょう。
下記のように展開元オブジェクトにバランスよくマッピングされました。
これで2つのオブジェクトのUVマッピングの編集が出来ました。Rhinocerosでは法線マッピングは扱えないので、とりあえずマテリアルの色マップに法線マップ画像を設定してみました。
造形用データを描く場合と違って、CGとして様々なマッピング技術を駆使する場合は、UVマッピングを編集しなければ思ったようにテクスチャを扱うことが出来ません。RhinocerosでもUVEditorからUVマッピングの編集は可能ですので挑戦してみて下さい。
Topic
テクスチャの繰り返しVを0.3にする代わりに、UVマッピングをこのようにY方向に0.3倍縮小させても同じ結果が得られます。
また、ロゴマークと鎚目の法線マップを画像編集ソフトなどで一つにまとめて、繰り返し設定を踏まえたUVマッピングの配置にすれば法線マップをまとめて使えます。
このようにリアルタイムレンダリングではパフォーマンスを確保するために、メッシュや画像などのデータは可能な限りまとめて、最適なUVマッピングを設定する必要があります。