今回は鎚目の法線マップの作成に挑戦したいと思います。
前回の記事と同様にRhinocerosでモデルデータを作って、xNormalを使って法線マップを生成する流れですが、今回の法線マップはマッピングの繰り返し設定をしても継ぎ目が出来ない様にパターン化されたシームレステクスチャを作ります。
Rectangleなどで正方形を作ります。今回は20✕20の正方形しています。
Sphereで球体サーフェスを作ります。今回は直径15の球体にしています。
球体サーフェスを正方形のZ座標から僅かに下に移動させます。今回はマイナス0.5移動させています。
球体サーフェスを複製し、正方形のそれぞれの端点のXY座標に配置します。4個の球体サーフェスはグループ化しておきます。
PlanarSrfなどで正方形からサーフェスを作り、Scale2Dなどで3倍ほどに拡大します。
この様に配置されたかと思います。
BooleanDifferenceで正方形サーフェスと球体サーフェスをブール演算することで鎚目にしていきます。このときオプション設定の元のオブジェクトを削除(D)=いいえに設定するのを忘れずに。
4つの球体サーフェスにより正方形の境界線をまたいでも鎚目が繋がるため、繰り返しパターンとしてモデルが出来ていきます。
SplitやTrimで正方形に切り取ります。
これで鎚目のモデルデータが出来ました。
前回の記事の要領でxNormalを使って法線マップにしたものが下記画像になります。
WeGLを使ってリアルタイムレンダリングする場合に、今回の鎚目のようなパターンの連続だとテクスチャマッピングの繰り返し設定をした方がパフォーマンスが良くなる場合があります。
下記画像はテクスチャマッピングに繰り返し設定をしたものになりますが、もしも繰り返し無しだと高画素な法線マップが必要になる為、ファイルサイズが大きくなってしまいます。
法線マップなどのテクスチャはモデルデータのファイルサイズを抑えるためにを用いられます。パターン化出来るテクスチャは今回取り上げたような作り方で作成しておくと使いまわしも出来て便利です。