光プローブは環境キューブマップとどのように異なりますか?


16

ライトプローブテクスチャを見ると、ぼやけた環境マップのように見えます。

2つの違いは何ですか、光プローブはどのように作られていますか、それがぼやけていることの利点は何ですか?


3
簡単な答え:「光プローブ」は通常、環境のコンパクトな球面調和表現を意味します。非常にコンパクト(数十バイトのストレージのみ)であるためと、拡散照明として使用するために事前フィルタリングされているため、ぼやけています。機会があれば、より長い回答に拡大します。:)
ネイサンリード

質問の背景はありますか?「光プローブ」という用語は曖昧であり、さまざまなシナリオ、アルゴリズム、およびエンジンで異なって使用されます。
デビッドクリ

具体的には、shadertoy.comにアクセスしたことがある場合、使用可能なキューブマップの2つのセットが表示されます。1つのセットは環境マップで、もう1つのセットは同じように見えますが、光プローブというラベルが付いています。それと光プローブ全般について興味があります。
アランウルフ

回答:


17

私が知っている「光プローブ」には、2つの異なる一般的な意味があります。両方とも、シーン内の1つのポイントの周りの光を表します。つまり、小さなサイズに縮小してそのポイントに立った場合に、周囲のあらゆる方向に見えるものを表します。

1つの意味は、ポイントの周りの光の球面調和表現です。 球面調和関数は、球面領域で定義された関数のコレクションです。これは、赤道周辺で、球体の極から極へと一定の回数だけ振動する正弦波に似ています。

球面調和関数を使用して、いくつかの球面調和関数(通常は4(線形、1次、または1バンドSH)または9( 2次、2次、または2バンドSHと呼ばれます)。スケーリング係数を保存するだけでよいため、これは非常にコンパクトです。たとえば、RGBデータを使用する2次SHの場合、プローブごとに必要な値は9 * 3 = 27のみです。そのため、SHは非常にコンパクトですが、必然的に非常に柔らかくぼやけた点の周囲の光を表現します。これは拡散照明に適しており、おそらく粗度の高い鏡面反射です。

SimonのTech Blogからのこのスクリーンショットは、シーン全体に配置されたSHライトプローブの配列を示しており、それぞれがその時点で受け取った間接照明を示しています。

SHライトプローブアレイ

「ライトプローブ」の現在一般的なもう1つの意味は、さまざまなレベルの粗さの鏡面反射照明に使用できるように、ミップレベルが異なる範囲に事前にぼかしられた環境キューブマップです。Seb Lagardeのブログのこの画像は、基本的な考え方を示しています。

事前フィルタリングされたキューブマップミップレベル

高解像度のミップ(左に向かって)は、詳細な反射画像が必要な高度に研磨された表面に使用されます。右に行くほど、低解像度のミップレベルはますますぼやけ、粗い表面からの反射に使用されます。シェーダーでは、このキューブマップをサンプリングするときに、材料の粗さに基づいて要求されたミップレベルを計算し、トライリニアフィルタリングハードウェアを利用できます。

これらのタイプのライトプローブは両方とも、間接照明を近似するためにリアルタイムグラフィックスで使用されます。直接照明はリアルタイムで計算できますが(エリアライトの場合は少なくとも近似できます)、通常、間接照明はその複雑さと計算オーバーヘッドのためにオフラインの前処理でベイク処理されます。

従来、ベイク処理の結果はライトマップになりますが、ライトマップは静的ジオメトリの拡散照明に対してのみ機能し、さらに多くのメモリを占有します。SHライトプローブの束をベイク処理すると(非常にコンパクトであるため、それらの多くを購入できます)、さらにキューブマップライトプローブがまばらに散らばり、静的オブジェクトと動的オブジェクトの両方でまともな拡散反射光と間接反射光を得ることができます。彼らは今日のゲームで人気のあるオプションです。


素晴らしい説明!ミップでのトリリニアフィルタリングの使用に関する部分について確認するために...ミップは、より低い解像度を使用し、より高いブラーレベルはより低い解像度を必要とするため、ボリュームテクスチャよりも好まれますか?
アランウルフ

1
光プローブのこれらの「種類」は両方とも同じだと思います。光プローブは、シーンのあるポイントで受信された放射輝度(通常は何らかの方法で事前に畳み込まれている)の測定値です。キューブマップとSHは、ライトプローブを保存/計算するための異なる方法であり、異なるストレージ/パフォーマンス/品質のトレードオフを行います。(編集:明確にするために、私は答えに同意します、それらを別々のものと考えるのは逆効果だと思います。)
yuriks

@AlanWolfe用途があり、それは単なる鏡面反射光ではなく、実際の環境(グレーボール/ホワイトボールと呼ばれる)から取得した拡散反射光のマップを持つことです。ミラー/グレーボールシェーダーの
joojaa

1
@AlanWolfe Correct—よりぼやけたレベルでは、解像度を下げる必要があります。また、キューブマップボリュームテクスチャは、ハードウェアに存在するものではありません。:)
ネイサンリード
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.