Bakery マニュアル和訳 3-高度なレンダリング設定

bakeryManual1-3

Bakery マニュアル 原文記事
この和訳は2021年09月01日に作成されました。

高度なレンダリング設定

Light Probe Mode

ライトプローブのベイク方法を変更します。

  • Legacy:ライトプローブのレンダリングボタンを使用してプローブを生成していました。PointライトとDirectionalライトはライトマッパー内で計算されますが、Areaライト/Skyライト/間接光源は各プローブの位置でキューブマップをレンダリングすることで計算されます。結果はL2球面調和として保存されます。デメリットとしては、キューブマップのレンダリングパフォーマンスが低下することと、ゲーム内のシェーダーが物理的なライティングをしていない場合や、プロジェクトがモバイル用に設定されている場合に、ライトマップとプローブが不一致になる可能性があります(Unityでは、高輝度の値がクリップされることがあります)。
  • L1:Renderをクリックすると、ライトプローブがライトマップと一緒にレンダリングされます。このオプションは優れたベイクパフォーマンスを提供し、プローブの照明がライトマップと一致することを保証します。結果はL1球形調和として保存されます(通常のシェーダーでも使用可能)。BakeryシェーダのNon-Linear Light Probe SHオプションを使用すると、結果はさらに向上します。

Unity 2019.3では、オクルージョンプローブオプションが有効な場合、レガシーライトプローブのカラーが適切に保存されないというバグがあるようです。オクルージョンプローブを使用する場合は、L1モードがデフォルトで推奨されるようになりました。レガシーモードはまもなく廃止され、L1をベースにした新しいL2モードに置き換わる予定です。

Asset UV Processing

アセットのUVパディング調整を設定します。

  • Don’t change:アセットに手を加えません。
  • Adjust UV padding:自動生成されたUV(アセットの “Generate Lightmap UVs”)を持つモデルを探し、メッシュごとのUVアイランド間に適切なパディングがあるようにさらに調整します。インポーターの設定にあるモデル全体のパックマージンは無視されます。代わりに、各メッシュの面積とライトマップの解像度に応じて最適な値が計算されます。
  • Remove UV adjustments:以前のUV調整をすべて戻し、自動アンラップされたモデルをUnityが最初にアンラップしたときの状態にします。

Denoiser

デノイザーを設定します。

  • Optix 5 : OptiX 5.1 AIデノイザーを使用します(以前は「Legacy denoiser」と呼ばれていました)。GPU上で動作します。Kepler(一般的にはGeForce 6xx)からTuring(一般的にはGeforce 20xx)までのすべてでサポートされています。Ampere(30xx)ではサポートされていません。OptiX 5.1は、組み込まれた静的なトレーニングデータセットを使用しています。
  • Optix 6 : OptiX 6.0 AIデノイザーを使用します(以前のデフォルトオプション)。GPU上で実行されます。Kepler (6xx) GPUでは失敗するようですが、Ampere (30xx) を含む、より新しいGPUではすべて動作します。6.0以降、OptiX denoiserのトレーニングデータセットがドライバーに含まれています。ドライバーv442.50以前は、その動作はOptiX 5.1と似ていましたが、v442.50以降、NVIDIAはデータセットを変更したため、結果が異なる場合があります。更新されたデータセットでは、格子状のパターンが発生したり、明るいエッジが増えたりすることがありますが(「Denoise: fix bright edges」で修正可能です)、動作は速くなりました。
  • Optix 7 : AIデノイザーOptiX 7.2を使用しています。OptiX 6.0と同様の動作をしますが、Ampere(30xx)でのサポートが充実しているかもしれません。
  • OpenImageDenoise : Intel Open Image Denoiseライブラリを使用しています。CPU上で動作します(SSE 4.1をサポートするCPUであれば何でもOK)。OptiXよりも若干遅くなることがありますが、品質は同等です。

Adjust Sample Positions

ライトの漏れを防ぐために、最適なサンプルの位置を見つけます。アルゴリズムの詳細はこちらで説明しています。場合によっては(スムーズな法線を持つ大規模かつ非常に低ポリゴンなジオメトリ等)、正しくない結果が出ることがありますが、その場合は無効にすることができます。

Denoise

有効にすると、ノイズ除去アルゴリズムを適用します。Bakeryでは、NvidiaのAIデノイザーを使用しています。

Fix Seams

有効にすると、UVの不連続性によって生じた継ぎ目のブレンドを試みます。Unityのデフォルトの球体を含む、滑らかなジオメトリに有効です。

Split by Scene

一度に複数のシーンが読み込まれ、このオプションが有効になっている場合、各シーンは他のシーンと共有されることなく、独自のライトマップのセットを持つことになります。このオプションは、ランタイムにシーンをストリーム配信する際に、ロードされるテクスチャの量を制限するのに役立ちます。

Hole Filling

アトラスパッカーが xatlas に設定されていると、すべての穴を埋めようとするので、より効率的なアトラスになります。非常に複雑なジオメトリを持つシーンでは、シーンのエクスポートにかかる時間が長くなる可能性がありますが、それ以外は推奨されます。

Min Resolution

ライトマップの最小サイズ制限。多くの小さいが完全に埋まっているライトマップと、少数の半端に埋まっているライトマップのバランスをとるために使用します。

Scale per Map Type

カラー/シャドウマスク/ディレクションマップの解像度を異なる形でスケーリングできるようにします。たとえば、低解像度の間接カラーと高解像度のシャドウマスクを使用する場合などに使用します。スケーリングはライトマップがレンダリングされた後に適用されるので、ベイクの時間は短縮されないことに注意してください。Adjust UV padding がオンになっていると、テクセルの漏れを防ぐために、パディングは最低解像度のマップに基づいて行われます。

Checker Preview

Show checker チェックボックスがオンの場合、Scene View は、ライトマップのテクセルサイズを示すために、可視オブジェクトの上にチェッカーボードパターンをレンダリングします。これは、ベイクする前に、Texels Per Unit やその他の解像度に影響する設定に適切な値を使用していることを確認するのに役立ちます。

チェッカープレビューを有効にすると、Bakeryはアトラスパッキングを強制的に実行します。これには時間がかかることがありますが、数秒以内に終わるはずです。何かを変更した後、チェッカーをリフレッシュしてシーンを再アトラスし、変更を確認してください。

チェッカープレビューでは、シーンが異なるライトマップにどのように分割されるかを示すために、ランダムな色も使用されます。

Point

Terrain に対しては正しいテクセルサイズが表示されません。

Emissive Boost

あらゆるサーフェイス・エミッションにこの数値を乗算します。

Indirect Boost

反射したすべての照明にこの数値を掛けます。ライトコンポーネントのIndirect Intensityと同じですが、グローバルです。

Backface GI

光が前面から背面に向かってどのくらい通過し、GIで反射されるかを決定します。これは、葉のような薄い半透明の面に特に有効です。値は0〜1の範囲で設定できます。

Ambient Occlusion

物理的ではないシンプルなアンビエントオクルージョンで、最終的なシーンの照明の上に外観目的で適用することができます。

  • Intensity: AOエフェクトの可視性をコントロールします。値が 0 の場合、効果は無効になります。
  • Radius: AOエフェクトで使用する光線の距離を決定します。値が小さいと局所的なオクルージョン(角やシワ)になり、値が大きいとスカイライトに似た効果になり、遠くのオブジェクトから影ができるようになります。
  • Samples: AOの品質に影響を与えます。一般的な値は 4 ~ 32 です。

RTX Mode

RTXハードウェアアクセラレーションを有効にします。このオプションは、RTX GPUのみに有効です。対応するドライバーの最小バージョンは418です。
ドライバーは、ほとんどの非RTX NvidiaカードでRTXモードをエミュレートすることができますが、その結果は通常よりも遅くなります。
Ampere(3xxx)カードでは、RTXモードを有効にする必要があります

Export Terrain Trees

有効にすると、設置された地形の木が照明に影響を与えます。ツリー自体はベイクされません。なお、ベイク時にはすべての樹木に可能な限り高いLODレベルが使用されます。このオプションは、非常に詳細なモデルを持つ数キロに及ぶ森林のレンダリングには使用しないことをお勧めします。

Terrain Optimization

有効にすると、Terrainはそのハイトフィールドジオメトリを利用するために、別のレイトレーシング技術を使用します。それ以外の場合は、他のメッシュと同様に扱われます。地形の最適化により、高解像度のランドスケープに必要なメモリフットプリントが大幅に削減されます。場合によっては、地形のベイクが速くなることもありますが、他のケース(特にシンプルな低解像度のランドスケープ)では、これを無効にすることが理にかなっているかもしれません。

Compress Volumes

有効にすると、ボリューム3Dテクスチャにテクスチャ圧縮を適用し、Bakeryシェーダを対応するサンプリングモードに切り替えます。非常に解像度の低いボリュームにはお勧めできません。ボリュームサイズは4の倍数になることがあります。

注意事項

  • 現在はBC6H/BC7テクスチャフォーマット(デスクトップ/コンソール)にしか圧縮できません。
  • ボリューム圧縮は、Unity 2020.1以降でのみサポートされています。
  • 現在、圧縮されたボリュームの使用をサポートしているのは、Standardレンダリングパイプライン用のBakeryシェーダのみです。

Samples Multiplier

すべてのシャドウとGIのサンプルに、指定された係数をかけます。ドラフトと最終品質をすばやく変更するために使用します。

GI VRAM Optimization

非常に大きなシーン、特に多くのライトマップを一度にベイクする際に使用されるメモリ最適化を設定します。有効にすると、レンダリングが少し遅くなります。無効にした場合、シーンが大きすぎると、Bakeryがメモリ不足になることがあります。

  • Auto: 開いているシーンをもとに、最適化が必要かどうかを推測します。推測はあくまでも概算なので、シーンが巨大であることがわかっている場合は、強制オンに設定してください。
  • Force On: 常に有効です。
  • Force Off: 常に無効になります。

Tile Size

GPU Priorityと同じですが、抽象的な優先度の代わりにタイルサイズを設定します。Bakeryはライトマップを小さなタイルに分割し、一度に1つずつアップデートします。サイズが小さいほど、GPU作業の中断が多くなり、システムの応答性が向上します。

Temp Path

一時フォルダのパスです。Bakeryはレンダリング中に数ギガバイトのディスク空きスペースを必要とします。このフォルダをSSD上に指定するとHDDに比べて少しレンダリング時間を短くできます。この時、このフォルダは自動的に清掃されません。レンダリング中を除き、いつでも内容を削除することが可能です。

Output Path

ライトマップのフォルダです。すべてのライトマップ、ライトプローブ、頂点カラーアセットが保存されます。これはAssetsフォルダからの相対パスです。

Use Scene Named Output Path

このオプションを有効にすると、アクティブなシーンと同名の出力先のフォルダが自動的に生成されます。この挙動は組み込みのLightmapperと類似した動作です。

Render Selected Groups

選択されたオブジェクトを含むライトマップグループのみをベイクします。選択されたオブジェクトだけでなく、そのオブジェクトが属するすべてのライトマップグループも再描画されます。その他のライトマップは更新されません。オブジェクトが手動で割り当てられたグループに含まれていない場合は、同じライトマップを使用しているシーンの一部がリベイクされます。

Beep on Finish

これを有効にすると、ベイク終了時にブザーを鳴らします。


コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA