Version: 2019.4
言語: 日本語
Autodesk® Maya® から Unity へ UV をインポート
UVの重複

ライトマップ UV の生成

メッシュ用に独自の ライトマップ UV を生成することも、Unity が自動的に生成することもできます。

独自のライトマップ UV の生成

任意のコンテンツ作成ソフトウェアで独自のライトマップ UV を作成できます。ライトマップ UV をメッシュの 2 番目の UV チャンネルに配置する必要があります。

ライトマップ用に適切に設定された UV セットは、以下のルールに従う必要があります。

  • [0,1] x [0,1] UV 空間内にある必要があります。
  • 個々のチャート間に十分なマージンが必要です。詳細は、UV オーバーラップ を参照してください。
  • 重複する面がないようにしてください。
  • UV の角度と元のジオメトリの角度の差を小さくしてください。
  • 一部の領域のライトマップ解像度を高くしたい場合を除いて、UV の三角形の相対的なスケールと元のジオメトリの三角形の相対的なスケールの差を小さくしてください。

モデルのライトマップ UV の自動生成

Model Import Settings を使用して、モデルのライトマップ UV を自動的に生成するように設定できます。

  1. Project ウィンドウでモデルを選択します。Unity はインスペクターで Model Import Settings を開きます。
  2. Model Import Settings で Model タブに移動し、Geometry セクションに移動します。
  3. Generate Lightmap UVs チェックボックスにチェックを入れます。Lightmap UVs settings セクションが Generate Lightmap UVs チェックボックスの下に表示されます。
  4. 任意: Lightmap UVs settings セクションで設定を行います。詳細は 設定 を参照してください。
  5. Apply ボタンをクリックします。Unity は Mesh.uv2 チャンネルにライトマップ UV を生成します。

ライトマップ UV 設定

これらは、Generate Lightmap UVs を有効にすると、 Model Import SettingsModel タブに表示される設定です。

プロパティ 説明
Hard Angle 隣接する三角形間の角度 (単位は度)。Unityはそれを鋭い切れ目と見なし、継ぎ目を作成します。これを 0 と 180 の間の値に設定できます。これはデフォルトで 88 度に設定されています。

これを 180 度に設定すると、Unity はすべてのエッジが滑らかであると見なし、これは有機的なモデルでは現実的です。デフォルト値 (88度) は機械的なモデルには現実的です。
Pack Margin The margin between neighboring charts (in pixels), assuming the Mesh takes up the entire 1024x1024 lightmap. You can set this to a value between 1 and 64. A larger value increases the margin, but also increases the amount of space the chart needs. This is set to 4 pixels by default.

For more information, see Pack Margin.
Angle Error ソースジオメトリの角度から UV 角度の可能な最大偏差 (0–100%)。これはデフォルトで 8% に設定されています。

これにより、UV 空間の三角形と元のジオメトリの三角形との違いを制御します。通常、ライトマップを適用するときにアーティファクトを避けるため、これはかなり低くする必要があります。
Area Error ソースジオメトリの領域から UV 領域の可能な最大偏差 (0–100%)。これは、デフォルトでは 15% に設定されています。

これにより、相対的な三角形領域を維持する度合いを制御します。値を大きくするとチャートを少なくすることができますが、三角形の解像度が変わる可能性があります。そのため、発生する歪みがライトマップの品質を損なわないことを確認してください。

パックマージン

フィルタリングを可能にするために、ライトマップは、チャート境界近くのライティング情報 (単位はテクセル) を含んでいます。そのため、常にチャート間にいくらかのマージンを加えて、ライトマップを適用するときにライトのにじみを回避します。

ライトマップの解像度は、ライトマップのテクセル解像度を定義します。ライトマッパーは、ライトマップ内のいくつかのチャートテクセルを広げてエッジが黒くなることを避けます。そのため、メッシュの UV チャートは、ライトのにじみを避けるために、その間に少なくとも 2 テクセルの間隔を空ける必要があります。Pack Margin 設定を使用して、ジオメトリの UV チャート間に十分なマージンがあることを確認します。

ライトマップの UV 空間では、UV オーバーラップや偶発的なライトのにじみを避けるために、チャート間のパディングは少なくとも 2 テクセルである必要があります。この画像では、黒いスペースはチャート間のスペースを表します。

角度の歪み

以下のスクリーンショットは解像度が同じですが、UV が異なります。最初の画像の Angle Error は高く設定され、結果に意図しないアーティファクトが含まれています。2 番目の画像ではデフォルトの Angle Error (8%) が設定されています。メッシュがより多くの三角形を持つと、角度の歪みにより形状を著しく歪ませます。

領域の歪み

以下の画像では、同じパラメーターを持つ 2 つのスポットライトがシリンダーの側面を照らしています。その右側面は Area Error の値が高く、そのため、三角形が歪み、解像度が低くなり、ライトにアーティファクトが発生しています。


プログレッシブライトマッパーは 2018.1 で追加 NewIn20181

Autodesk® Maya® から Unity へ UV をインポート
UVの重複