Stingray でオブジェクト用のベイク処理されたライティングを格納するには、「UV セット」を使用して各メッシュを展開する必要があります。UV セットは、3 次元メッシュの各頂点を 2 次元テクスチャ空間にマッピングしたものです。メッシュに割り当てられた最初の UV セット(Maya では通常 uv0 など)は、一般に、カラー マップや法線マップなどのテクスチャに使用されるため、Stingray は 2 番目の UV セット(Maya では uv1 など)を使用してライトマップをベイク処理します。
Maya や 3ds Max のような 3D 設計ツールを使用して UV セットを作成し、Stingray に読み込む場合に使用する .fbx ファイルにアセットを保存することをお勧めします。これらの設計アプリでは、3D メッシュを 2D 空間で表現する方法を最適化することができます。
ベイク処理されたライトマップが実現できる解像度または詳細は、モデルの各面が UV 空間内に占める体積によって決まります。したがって、モデルの最も重要なパーツがテクスチャ空間内の大部分の領域を占めるように、UV セットを設定するのが最適です。
凸型メッシュを 2D に展開してフラット化するには、通常、「シーム」という、モデルのエッジを分割する場所をいくつか導入します。ライトマップをゲーム内のオブジェクトに適用し直すと、これらの場所でシームが見えることがあります。したがって、最も目立たない場所にシームを設定することをお勧めします。
FBX ファイルの読み込み時に、ライト ベイク処理用の UV セットを自動的に作成することができ ます。Import FBX オプションにある Generate UVs for Light Baking は、既定でオンになっています。「FBX ファイルを読み込む」を参照してください。
メッシュの UV がまだ設定されていないユニットが Stingray 内にある場合は、Unit Editor で UV セットが自動生成されるように Stingray を設定することができます。こうすると、UV セットが最適化されていない場合でも、任意のメッシュのライティングをベイク処理できます。
Stingray で UV を自動生成するには:
オブジェクトの 2 番目の UV セットが空であることを確認します。
Asset Browser でユニットをダブルクリックして、Unit Editor を開きます。
Unit Editor の左側にあるツリー ビューで、アンラップするメッシュを選択します。
Properties パネルで、Generate UV-unwrap オプションをオンにします。
ユニットを保存します。
ライトマップをベイク処理するときに最適な結果を得るには、UV に適したアンラップ済みレイアウトの外観について学習する必要があります。次に一般的なヒントを示します。
すべての面を適切にレイアウトして、可能な限り多くの UV 空間を使用する必要があります。
大きい面は(床や壁など)は小さな面よりも多くの空間を占めます。ライトマップで占める空間が大きいほど、ライトおよびシャドウの解像度が大きくなります。
見えにくい場所にシームを配置します。
UV 空間がほとんどない細長い面は使用しないでください。
オーバーラップしている面は使用しないでください。
Maya、Maya LT、または 3ds Max などのモデリング ツールのドキュメントを参照してください。
UV のアンラッピングが不適切な場合は、ベイク処理したライトマップを使用してオブジェクトをレンダリングするときに、アーティファクトが発生することがあります。少なくとも 1 回ライティングをベイク処理した後に、Level Viewport でアンラッピングの品質を調べることができます。
Level Viewport が Lightmap Texel 表示モードに切り変わり、UV のアンラッピングを示すチェッカー パターンがすべてのオブジェクトに表示されます。
チェッカー パターンを慎重に調べて、シーム、オーバーラップ、またはその他の UV 問題を示す歪みを見つけます。