ライトとシャドウのベイク処理を使用する

頂点とテクスチャの上に計算済みのライトとシャドウを作成するには、[ライトとシャドウをベイク処理]モジュール[可視化]メニュー、および UV エディタ を使用します。ベイク処理は複雑であるため、このトピックではライトマップと頂点のベイク処理を扱う際に役立つヒント、推奨事項、説明を示します。

ベイク処理タイプを選択する

ベイク処理を行う場合は、[ベイク処理タイプ]の 2 つのオプションの中から選択できます。次のセクションを確認して、ニーズに最適な方法を判別してください。

頂点のベイク処理

頂点のベイク処理は、既に細かいテッセレーションが行われているオブジェクト、または十分なサブディビジョンを持つオブジェクトが対象になります。頂点のベイク処理タイプのメリットは、手動で修正しなくても、環境のシャドウ、単純なライティングの設定、またはニュートラルな純粋に拡散して見える外観をすべて、非常に高速な方法でベイク処理できることです。

オブジェクトに細かなテッセレーションがない場合は、ジオメトリをサブディビジョンしてベイク処理の結果を向上させることができます。この作業を行うときに避ける、または確認する必要があるのは、メッシュの自己交差です。メッシュに自己交差が生じると、暗いスポットが生じます。サブディビジョンの前に、マテリアル内の変位テクスチャを無効にします。

自己交差の例

次の点に注意してください。

テクスチャのベイク処理

テクスチャのベイク処理は、単純でフラットなジオメトリに適しています。これを行うことで高品質のライトマップが得られる一方で、コンストラクション データやアーキテクチャなど、ジオメトリのテッセレーションのみが粗くなります。近くのガラスやスペキュラ マテリアルの反射またはコースティクスなど、より複雑なライティング エフェクトをベイク処理する場合も、テクスチャのベイク処理を使用します。[透明なオブジェクトを非表示]を無効にするだけで、ベイク処理中にこれらのオブジェクトが表示されるようになります。[ライトマップのパスを再設定]または Python API を使用して、すばやく切り替えることができるライトマップ バリアントを作成することもできます。

テクスチャのベイク処理にはライトマップ UV が必要になるため、複雑なオブジェクトや重要なオブジェクトを直接ビューで表示する場合は、UV を手動でアンラップすることをお勧めします。ライトマップの UV セットを編集するには、UV エディタを使用します。

コースティクスは、間接照明の一部としてベイク処理できるため、間接光の数は 16 よりも大きくすることをお勧めします。基本的に、間接光の数は、ベイク処理中のレイトレーサーのトレース深度よりも優先されます。

コースティクスの例

計算に時間がかかり、事前に多くの作業が必要になる可能性がありますが、テクスチャのベイク処理タイプを使用すると、ジオメトリに影響を与えることなく、頂点のベイク処理タイプよりも高い精度を実現できます。特に、頂点のベイク処理では表示しにくい細部を持つオブジェクトのシャドウに適しています。フォトン マッピングを使用すると、実現するのが困難なライティング シナリオを改善できるほか、レイライトをベイク処理するための要件を満たすことになります。

フォトン マッピングの例

アクティブな変位テクスチャはベイク処理中に評価されます。ただし、間接光で[オーバーライド マテリアル]が有効になっている場合は、ベイク処理中にマテリアルの割り当てが選択したカラーのフラットな拡散マテリアルで置き換えられます。変位をライトマップにベイク処理する場合は、このオプションを必ず無効にしてください。

テクスチャ ベイク処理を使用すると、クローンにさまざまなライトマップを設定できます。したがって、自動車の左側と右側にクローン化されたホイールがある場合に、頂点ベイク処理タイプを選択すると、シーングラフで最初に選択したときと同じベイク処理の結果になります(自動車のシャドウ側では薄くなりすぎることがあります)。ただし、テクスチャのベイク処理を使用すると、さまざまなクローンにライトマップを保存できます。[クローンのライトマップを共有]をオフにして、頂点のベイク処理の場合のように、クローンのライトマップを共有解除する必要がなくなるようにしてください。

[ライトマップを保存]を使用すると、さまざまなライティング設定のベイク処理を .exr ファイルとして外部に保存することができます。これらのファイルは、外部のイメージ編集プログラムで編集できます。

アンビエント オクルージョンを有効にする

複雑なライティング設定を行わずにすばやくシャドウを生成する場合や、シーン内のジオメトリのリアルさを高める、魅力的でニュートラルな外観を実現する場合は、アンビエント オクルージョンを使用します。曇天からのシャドウ投影と同様なシャドウを作成すれば、実世界に近くなります。この機能を有効にすると、すき間、折り目、コーナー、および接触点が暗くなります。

アンビエント オクルージョンは物理的に正確ではないレンダリング手法です。この手法で、他のジオメトリで隠れている半球の比率をサンプリングし、その比率に応じてピクセルをシェーディングします。オブジェクトから跳ね返るライトや透過するライトをシミュレートするものではありませんが、シーン内にライトがない場合でも機能します。

  1. メニュー バーで、[シーン] > [ライトとシャドウをベイク処理]をクリックします。

    注:

    メニュー バーで、[ライトとシャドウをベイク処理]が一覧表示されない場合は、[シンプル UI]をオフにします。

  2. [ベイク処理の設定] タブ > [一般] セクションで[アンビエント オクルージョン]を選択します。

  3. ウェイト付けおよびその最小距離最大距離を設定します。

  4. 結果を表示するには、次のいずれかの操作を実行します。これらはデータの準備中に行われる前処理の計算であることに注意してください。結果はジオメトリの頂点またはテクスチャにベイク処理されます。

    • [すべてを計算]: すべての表示されたノード、および選択されたノードとその子ノードのアンビエント オクルージョンを計算します。
    • [欠落を計算]: 最後のアンビエント オクルージョン パスに含まれていなかったノードのアンビエント オクルージョンを計算します。表示されていない、および選択されていないすべてのノードとその子ノードを検索する必要がなく、時間を節約できます。

アンビエント オクルージョンの滑らかさはジオメトリの詳細レベルによって決まるため、VRED では低レベルのジオメトリの品質を向上させる方法がいくつか用意されています。たとえば、頂点のベイク処理の場合に三角形をサブディビジョンしたり、モジュールの[直接光]セクションで事前に定義された品質プリセットを使用したりします。

アンビエント オクルージョン モードとシャドウ モードの間接照明の違い

アンビエント オクルージョン モードまたはシャドウ モードを使用する場合は、間接光のベイク処理によって、頂点のベイク処理とテクスチャのベイク処理の結果が異なります。

頂点のベイク処理では、アンビエント オクルージョンとシャドウの間接光をベイク処理する際にニュートラルな計算が使用されます。ベイク処理が完了すると、環境係数(環境のカラー補正と露出の設定によって変更された HDR の平均的なカラー)が適用され、リアルタイム レンダリング中に現在のアクティブ環境に合わせてベイク処理された間接光が調整されます。つまり、ベイク処理後に環境が変更されることがあります。

テクスチャのベイク処理では、ベイク処理後のリアルタイム レンダリング中に環境係数も乗算されます。ただし、間接光のベイク処理には、現在のライティング状況(ニュートラルでない可能性がある)が使用されます。したがって、アンビエント オクルージョン モードで間接照明の結果をニュートラルにするには、ベイク処理中に白またはニュートラルの HDR を使用して頂点のベイク処理方法を再現します。シーンの特定のライティング状況で間接照明がベイク処理されている場合でも、さまざまな環境の中で切り替えることができます。

環境のライティングとシャドウに関するヒント

OpenGL モードおよびレイトレーシングの計算済みレンダリング モードでは主要な光源が環境であることが多いため、通常は、シャドウに何らかの作業を行う必要があります。これらのモードで環境ライティングのシャドウを改善するには、次の操作を試してください。

環境シャドウの光源はベイク処理と組み合わせて使用できますが、アンビエント オクルージョンまたはニュートラル シャドウのベイク処理(およびオプションで間接光)でのみ使用する必要があることにご注意ください。

注:

環境シャドウの光源とベイク処理されたライトとシャドウの結果を組み合わせないでください。これらを組み合わせると、ベイク処理された光源とリアルタイム光源が含まれるようになるため、環境からのライティング効果が 2 倍になります。

ライトとシャドウの計算済みのイルミネーション レンダリング

以下の表の内容は、ライトとシャドウをベイク処理するときに、レンダリング モードや、頂点のベイク処理とテクスチャのベイク処理のいずれであるかに基づいて、計算済みのイルミネーションのレンダリングで表示される視覚的な違いを示します。[計算済みのイルミネーションのレンダリング]を使用して、ベイク処理されたものをプレビューします。

計算済みのイルミネーションのレンダリングの例

たとえば、OpenGL で作業している場合、テクスチャのベイク処理を使用してライトとシャドウがベイク処理されていれば、計算済みのイルミネーションのレンダリング モードによって、ベイク処理された直接光とベイク処理された間接光(有効になっている場合)が表示されます。

注:

ベイク処理の対象を確認するには、[ライトとシャドウをベイク処理] > [詳細] タブを使用します。このタブには、既にベイク処理されているものを表示するオプションが含まれています。

Advanced_lS

ライトとシャドウ
レンダリング モード 表示された頂点のベイク処理 表示されたテクスチャのベイク処理
OpenGL、RT 計算済み、および RT 計算済み + 反射 ベイク処理された直接光 + 間接光

ベイク処理された直接光 + 間接光

RT 計算済み + シャドウ ベイク処理された間接光



既知の問題: この操作を行うと、ベイク処理された直接光 + 間接光が表示されますが、現在はベイク処理された間接光のみが表示されます(有効になっている場合)。
既知の問題: この操作を行うと、ベイク処理された直接光 + 間接光が表示されますが、現在はベイク処理されたライトは表示されません。
RT 計算済み + IBL ベイク処理された間接光



間接光が表示されます(有効になっている場合のみ)。
計算済みのイルミネーションレンダリングの制限: この操作を行うと、間接光のみが表示されます。ただし、ライトマップに直接光と間接光の合計が保存されるため、間接光を独自に表示することはできません。
RT フル GI ベイク処理は表示されません。フォトン マップまたはファイナル ギャザー マップは、フォトン トレーシングが有効になっている場合のみ表示されます。 ベイク処理は表示されません。フォトン マップまたはファイナル ギャザー マップは、フォトン トレーシングが有効になっている場合のみ表示されます。

環境からの直接光と間接光

環境およびその他の光源からの直接光と間接光をベイク処理できます。直接光は、環境を含むすべてのアクティブな光源から取得されます。一方、間接光は、近くのオブジェクトで反射して、ベイク処理されたオブジェクトに照射されるライトです。 また、追加情報については、「アンビエント オクルージョン モードとシャドウ モードの間接照明の違い」を参照してください。

ベイク処理されたイルミネーションを表示するには、現在選択されているレンダリング モードで計算済みのイルミネーションが使用されている場合、[可視化]メニュー > [計算済みのイルミネーションのレンダリング]オプションを使用します(たとえば、レイトレーシングのフル グローバル イルミネーションではベイク処理されたイルミネーションが使用されないため、レイトレーシングのフル GI モードで操作している場合は、ベイク処理されたイルミネーションを使用できません)。

アンビエント オクルージョンとシャドウの計算済みのイルミネーション レンダリング

以下の表の内容は、アンビエント オクルージョンまたはシャドウをベイク処理するときに、レンダリング モードや、頂点のベイク処理とテクスチャのベイク処理のいずれであるかに基づいて、計算済みのイルミネーションのレンダリングで表示される視覚的な違いを示します。[計算済みのイルミネーションのレンダリング]を使用して、ベイク処理されたものをプレビューします。

たとえば、OpenGL で作業している場合、テクスチャのベイク処理を使用してアンビエント オクルージョンがベイク処理されていれば、計算済みのイルミネーションのレンダリング モードによって、ベイク処理なしの/黒い結果とベイク処理された間接光(有効になっている場合)が表示されます。

注:

ベイク処理の対象を確認するには、[ライトとシャドウをベイク処理] > [詳細] タブを使用します。このタブには、既にベイク処理されているものを表示するオプションが含まれています。

[高度な設定]タブ

アンビエント オクルージョンまたはシャドウ
レンダリング モード 表示された頂点のベイク処理 表示されたテクスチャのベイク処理
OpenGL、RT計算済み、RT 計算済み + 反射、RT 計算済み + シャドウ、RT 計算済み + IBL ベイク処理された間接光



間接光が表示されます(有効になっている場合のみ)。
ベイク処理された間接光



間接光が表示されます(有効になっている場合のみ)。
RT フル GI ベイク処理は表示されません。フォトン マップまたはファイナル ギャザー マップは、フォトン トレーシングが有効になっている場合のみ表示されます。 ベイク処理は表示されません。フォトン マップまたはファイナル ギャザー マップは、フォトン トレーシングが有効になっている場合のみ表示されます。

レンダリング中のベイク処理結果の適用方法

次に、レンダリング中のベイク処理結果の適用方法を示します。

ライティングをプレビューする

ベイク処理する前に、[可視化]メニューのオプションを使用して、ベイク処理されるライティングをプレビューします。レイトレーシングの[フル グローバル イルミネーション]を使用します。特に、[レンダーパス レンダリング] > [イルミネーション チャネル] > [拡散(間接)イルミネーション]をオンにします。 [ライトとシャドウをベイク処理]モジュールで設定した間接光の数によって、ベイク処理中にトレース深度がオーバーライドされるため、トレース深度にはフル グローバル イルミネーションの場合と同じ結果を得るためにベイク処理の計算で必要になる間接光の数が反映されます。

重要:

光源をベイク処理したら、[ライトとシャドウ]を使用して、これらの光源をオフにする必要があります(または拡散ライトの色を黒に設定するなどして、拡散の影響を最小限にする必要があります)。これにより、オブジェクトが二重に照射されることがなくなります。この操作を行わない場合は、ベイク処理された光源とリアルタイム光源の両方から照射されます。再度ベイク処理する場合は、ライトを再び有効にしてください。

ベイク処理中にマテリアルを変更する場合は、[オーバーライド マテリアルを使用]を試してください。オーバーライドを有効にすると、光沢やカラーなどのマテリアル プロパティを含まない、通常の外観のベイク処理が行われます。シーン内のすべてのソリッド オブジェクトは、ベイク処理中に選択されたカラーのフラットな拡散マテリアルを取得します。

注:

ガラス オブジェクト、半透明のオブジェクト、およびシャドウ プレーンはオーバーライドされません。

UV のベスト プラクティス

オブジェクト上で UV を操作する前に、[シーン] > [最適化] > [最適化] > [頂点を統一]を使用して、[最適化]をクリックします。これにより、すべてのプロパティの値が同じである重複する頂点が結合されます。これにより、OpenGL レンダリング速度と UV エディタの計算速度を上げることができます。

ライトマップ UV アンラップのガイドライン