レンダリング方程式-なぜ直接解決できないのですか?


9

1986年にKajiyaによって導入されたレンダリング方程式が、直接/解析的に解決できないのはなぜですか?


5
良い質問です。研究は必要ありません。
ivokabel

一般的に積分方程式についてどのくらい知っていますか?あなたはそれに対する分析的解決策を求めていますか?
ガロア2016

回答:


16

残念ながら、上記の回答にコメントを追加できない(評判が足りない)ため、次のようにします。

Dragonseelが説明しているのは、単なる積分方程式(具体的には、第2種のフレドホルム方程式)であることを指摘しておきます。分析的な解決策を持っている多くのそのような方程式があります。レンダリング方程式の一部の形式にも1つあります(たとえば、レンダリング方程式が無限に再帰的であるとしても、単純な収束幾何級数を使用して白い炉の解を与えることができます)。

また、再帰の数を制限することによって推定解にバイアスをかける必要はありません。ロシアンルーレットは、無限再帰レンダリング方程式の公平なソリューションを提供するための便利なツールを提供します。

主な問題は、反射(BRDF)、放射輝度、可視性の関数が非常に複雑であり、多くの不連続性を含んでいるという事実にあります。これらの場合、多くの場合、分析的な解決策がないか、そのような解決策を見つけることが単に実行不可能です。これは、1次元の場合にも当てはまります。ほとんどの積分には分析ソリューションがありません。

最後に、レンダリング方程式のほとんどのケースに分析解がない場合でも、レンダリング方程式の形式には分析解が存在する多くの研究があることに注意したい。可能であれば、そのようなソリューションを(近似として)使用すると、ノイズを大幅に減らし、レンダリング時間を短縮できます。


13

レンダリング方程式は次のとおりです。

ここに画像の説明を入力してください

これで、積分は点周りの球上にあります。あなたはあらゆる方向から入ってくる減衰した光の上で積分します。x

しかし、どのくらいの光が入りますか?これは光であるいくつかの他のポイントこと方向に反射する点の。L(x,ωi)xωix

次に、新しい点反射する光の量を計算する必要があります。これには、その点のレンダリング方程式を解く必要があります。そして、その点の解法は、を含む他の多数の点に依存します。xx

つまり、レンダリング方程式は無限に再帰的です。

無限の積分領域に無限の積分があるため、正確かつ分析的に解くことはできません。

しかし、光は反射するたびに弱くなるため、ある時点で人間はもはやその違いに気付かなくなります。そして、実際にはレンダリング方程式を解くことはありませんが、再帰(たとえば、反射)の数を「十分に近い」ものに制限します。


1
まあ、あなたが愚かに単純なシーンを持っているなら、あなたはおそらくポイントのレンダリング方程式を分析的に解くことができるでしょう。そして、シーンがそれよりもさらに単純な場合、投影された画像全体の分析ソリューションを取得できる可能性があります。しかし、それは役に立たないでしょう... :)
joojaa

3
シーンは、単一の平らなオブジェクトだけのように本当にシンプルでなければなりません。お互いを見ることができる任意の2つのポイントがあったとしても、球全体についての統合があるため、レンダリング方程式は無限になります。各ポイントには、統合ドメイン内の他のポイントが含まれます。そのため、それ自体を反射することができない単一のリフレクターのみ。その後、あなたはそれを解決することができます。次に、単にグローバルライティングエフェクトがないため、ローカルライティングに影響します。そしてそれは解決可能です。
Dragonseel

はい、それはばかげて簡単です。
joojaa 16

2
@joojaa私の理解では、すべての場合にレンダリング方程式を解くことが不可能ではなく、解決可能である限り、それは実用的ではありません
galois

4
FYI Mathjax構文はこのStackExchangeで機能するため、識別子の周りに$記号を付けると、それらはすべてmath-yに見えます。
Julien Guertault 2016
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.