パルテア

どうぶつの森の美術館 〜ゲームエンジン(Unity)グラフィックス ライティング Enlighten を使用したリアルタイム グローバル イルミネーション〜

Enlighten を使用したリアルタイム グローバル イルミネーション

Unity は、リアルタイム グローバル イルミネーションに Enlighten というミドルウェア ソリューションを使用します。

デフォルトでは、リアルタイム ライトはシーンに直接照明のみを提供します。シーンでリアルタイム グローバル イルミネーション (Enlighten リアルタイム グローバル イルミネーション) を有効にすると、リアルタイム ライトはシーンに間接照明も提供します。

レンダリング パイプラインのサポート

レンダリング パイプライン全体で Enlighten を使用したリアルタイム グローバル イルミネーションのサポートの詳細については、レンダリング パイプラインの機能比較を参照してください。

Enlighten リアルタイム グローバル イルミネーションを使用する場合

Enlighten リアルタイム グローバル イルミネーション (リアルタイム GI) は、空を横切る太陽や閉じた廊下でゆっくりと脈動するライトなど、ゆっくりと変化し、シーンに大きな視覚的影響を与えるライトに役立ちます。この機能は、特殊効果や急速に変化するライトを対象としていません。遅延と必要な CPU サイクル数により、そのようなアプリケーションは実用的ではないためです。Enlighten リアルタイム グローバル イルミネーションは、中級から上級の PC システムやコンソールを対象とするゲームに適しています。一部のハイエンド モバイル デバイスも、この機能を利用できるほど強力ですが、許容できるパフォーマンスを確保するには、シーンを小さくし、リアルタイム ライトマップの解像度を低くする必要があります。

Enlighten リアルタイム グローバル イルミネーションの使用

シーンで Enlighten リアルタイム グローバル イルミネーションを有効にするには、ライティング ウィンドウ (メニュー: ウィンドウ > レンダリング > ライティング) を開き、リアルタイム グローバル イルミネーションを有効にします。

特定のライトに対するリアルタイム GI の効果を無効にするには、ライト ゲームオブジェクトを選択し、ライト コンポーネントで間接乗数を 0 に設定します。これは、ライトがシーンに間接光を一切与えないことを意味します。

リアルタイム GI を完全に無効にするには、ライティング ウィンドウ (メニュー: ウィンドウ > レンダリング > ライティング) を開き、リアルタイム グローバル イルミネーションのチェックを外します。

Enlighten リアルタイム グローバル イルミネーションの使用に関する詳細な手順については、事前計算されたリアルタイム GI に関する Unity チュートリアルを参照してください。

ライト プローブと Enlighten リアルタイム グローバル イルミネーション

Enlighten リアルタイム グローバル イルミネーションを有効にすると、ライト プローブの動作が異なります。

シーン ライティングのランタイム変更に対応するために、ライト プローブはランタイムにライティングを繰り返しサンプリングします。

シーンで Enlighten リアルタイム グローバル イルミネーションを無効にすると、ライト プローブはベイクされたライティング データのみを使用します。つまり、シーン ライティングのランタイム変更には反応しません。

シャドウと Enlighten リアルタイム グローバル イルミネーション

ライトがシャドウも投影する場合、Unity はシーン内の動的および静的なゲームオブジェクトの両方をライトのシャドウ マップにレンダリングします。静的および動的ゲームオブジェクトの両方のマテリアル シェーダーは、これらのゲームオブジェクトが互いにリアルタイム シャドウを投影するように、このシャドウ マップをサンプリングします。シャドウ距離設定は、シャドウがフェードアウトして完全に消え始める最大距離を決定します。これは、パフォーマンスと画像の品質に影響します。

Enlighten リアルタイム グローバル イルミネーションの結果には、シーンが非常に小さい場合を除き、ソフト シャドウも含まれます。これらのシャドウは通常、ライトマッピングで実現できるものよりも粗い粒度です。

シャドウ距離設定を変更するには、[編集] / [プロジェクト設定] / [品質] / [シャドウ] に移動します。

パフォーマンスに関する考慮事項

Enlighten Realtime Global Illumination は、ライトマップのセットを使用してリアルタイムの間接バウンスを保存します。このため、Enlighten Realtime Global Illumination を有効にすると、Baked Global Illumination と一緒に使用している場合であっても、メモリ要件が増加します。

Enlighten Realtime Global Illumination を使用すると、追加のライトマップとライト プローブのセットをサンプリングするため、照明を生成するために必要なシェーダー計算の数も増加します。

Enlighten リアルタイム グローバル イルミネーションの最適化

Enlighten リアルタイム グローバル イルミネーションがシーンの照明の変化に十分迅速に反応しない場合は、いくつかの方法でこの問題を解決できます。

リアルタイム ライトマップの解像度を下げて、実行時の計算を高速化します。

[品質設定] ウィンドウで、リアルタイム GI の CPU 使用率設定を上げます。その代償として、他のシステムが作業を行うために受け取る CPU 時間が少なくなります。これが許容できるかどうかは、プロジェクトによって異なります。これはシーンごとの設定であるため、プロジェクト内の個々のシーンの複雑さに基づいて、より多くの CPU 時間を割り当てたり、より少ない CPU 時間を割り当てたりできます。

デフォルトの環境寄与の無効化

Unity は、環境照明がデフォルトでシーンとその中のゲームオブジェクトに確実に影響するように、アンビエント プローブとデフォルトのリフレクション プローブを自動的に生成します。

手動で作成されたライト マップとライト プローブがないシーンまたはゲームオブジェクトの照明結果で環境寄与を無効にするには、デフォルトのリフレクション プローブとアンビエント プローブを無効にします。詳細については、「SkyManager の無効化」を参照してください。


    Course

  • 日時:2024/04/01 ~ 2025/03/31
  • 名称:どうぶつの森の美術館 〜ゲームエンジン(Unity)グラフィックス ライティング Enlighten を使用したリアルタイム グローバル イルミネーション〜
  • 場所:オンラインスクール
  • 料金:¥0 (消費税込)