Download - First Order
![Page 1: First Order](https://reader033.vdocuments.mx/reader033/viewer/2022052315/554a15c5b4c905825d8b4e32/html5/thumbnails/1.jpg)
G.I. 歴史• レイトレ
• ラジオシティ
• パストレ
• フォトンマップ
• MLT, unbiased MC
![Page 2: First Order](https://reader033.vdocuments.mx/reader033/viewer/2022052315/554a15c5b4c905825d8b4e32/html5/thumbnails/2.jpg)
G.I. 歴史• レイトレ -> 死亡
• ラジオシティ -> 死亡
• パストレ -> 時代遅れ
• フォトンマップ -> 時代遅れ
• MLT, unbiased MC -> ブレーク中?
• maxwellrender, fryrender, indigo, Kerkythea, etc.
![Page 3: First Order](https://reader033.vdocuments.mx/reader033/viewer/2022052315/554a15c5b4c905825d8b4e32/html5/thumbnails/3.jpg)
MC rendering
• モンテカルロ? 本当に十分か?
• 消えないノイズ、とくにdiffuse 面のノイズ
• irradiance cache? final gather?
• しみのようなアーティファクトは MC
ノイズよりも受け入れられない.
![Page 4: First Order](https://reader033.vdocuments.mx/reader033/viewer/2022052315/554a15c5b4c905825d8b4e32/html5/thumbnails/4.jpg)
これから
• MC 解は十分でない!
• 画像品質 ~ 膨大なレンダリング時間
• Analytic レンダラが来る!
• 画像品質 != レンダリング時間
![Page 5: First Order](https://reader033.vdocuments.mx/reader033/viewer/2022052315/554a15c5b4c905825d8b4e32/html5/thumbnails/5.jpg)
“Analytic” とは?
• 光積分を Closed-form で解く
• MC を使って積分を解かない
• 微分値をうまく利用する
• 数値微分ではない
![Page 6: First Order](https://reader033.vdocuments.mx/reader033/viewer/2022052315/554a15c5b4c905825d8b4e32/html5/thumbnails/6.jpg)
既存研究• 解析的手法の光積分への応用は 90 年代からある
• Arvo, INRIA, multipole light expansion, spherical harmonics Durand 2005
• 多くは duffse 面 + 簡単なジオメトリに限定
![Page 7: First Order](https://reader033.vdocuments.mx/reader033/viewer/2022052315/554a15c5b4c905825d8b4e32/html5/thumbnails/7.jpg)
Analytic rendering
• 大きな問題の一つは、visibility を含んだ関数の積分を求めるにはどうしたらよいか?
• 単純なジオメトリなら問題ない
• クリッピング
• 数万~ ポリゴンのシーンで使い物になるか?よい空間データ構造がない?
![Page 8: First Order](https://reader033.vdocuments.mx/reader033/viewer/2022052315/554a15c5b4c905825d8b4e32/html5/thumbnails/8.jpg)
ここで, やっと
![Page 9: First Order](https://reader033.vdocuments.mx/reader033/viewer/2022052315/554a15c5b4c905825d8b4e32/html5/thumbnails/9.jpg)
A First Order Analysis of Lighting, Shading, and Shadows
![Page 10: First Order](https://reader033.vdocuments.mx/reader033/viewer/2022052315/554a15c5b4c905825d8b4e32/html5/thumbnails/10.jpg)
これはなに?
• 光輸送の勾配(gradient)解析
![Page 11: First Order](https://reader033.vdocuments.mx/reader033/viewer/2022052315/554a15c5b4c905825d8b4e32/html5/thumbnails/11.jpg)
何に使えるか?
• 勾配を使って、変化の大きいところを集中的にサンプリング
• ソフトシャドウ
• 適応的アンチエイリアシング
![Page 12: First Order](https://reader033.vdocuments.mx/reader033/viewer/2022052315/554a15c5b4c905825d8b4e32/html5/thumbnails/12.jpg)
Contribution
• シェーディングの勾配解析
• バンプマップの勾配解析
• 画像の勾配解析
•ビジビリティの勾配解析
•上記の数学的定式化
![Page 13: First Order](https://reader033.vdocuments.mx/reader033/viewer/2022052315/554a15c5b4c905825d8b4e32/html5/thumbnails/13.jpg)
注目
• 今回は、 ビジビリティの勾配解析を取り挙げます
• 勾配には、spatial と angular がある
![Page 14: First Order](https://reader033.vdocuments.mx/reader033/viewer/2022052315/554a15c5b4c905825d8b4e32/html5/thumbnails/14.jpg)
• まずは二次元から
![Page 15: First Order](https://reader033.vdocuments.mx/reader033/viewer/2022052315/554a15c5b4c905825d8b4e32/html5/thumbnails/15.jpg)
• B = 光積分
• ∇B^V = ビジビリティに関して B を微分
![Page 16: First Order](https://reader033.vdocuments.mx/reader033/viewer/2022052315/554a15c5b4c905825d8b4e32/html5/thumbnails/16.jpg)
• V 関数を Heaviside 関数で formalize
w < a(x) なら
1(可視),
w > a(x) なら0(不可視)
![Page 17: First Order](https://reader033.vdocuments.mx/reader033/viewer/2022052315/554a15c5b4c905825d8b4e32/html5/thumbnails/17.jpg)
• Heaviside 関数の微分はデルタ関数
![Page 18: First Order](https://reader033.vdocuments.mx/reader033/viewer/2022052315/554a15c5b4c905825d8b4e32/html5/thumbnails/18.jpg)
• B の angular での V における微分はこうなる. T = L x BRDF x cos
![Page 19: First Order](https://reader033.vdocuments.mx/reader033/viewer/2022052315/554a15c5b4c905825d8b4e32/html5/thumbnails/19.jpg)
• ビジビリティの位置における微分の場合はこうなる
• ブロッカーへの距離の寄与が追加されている
• 離れているほど Bx は小さくなる
• ブロッカーが地平線にあるほど Bx はちいさくなる
![Page 20: First Order](https://reader033.vdocuments.mx/reader033/viewer/2022052315/554a15c5b4c905825d8b4e32/html5/thumbnails/20.jpg)
• 各ビジビリティが変化する点, つまり V
が非連続(discontinuity)になる場所(ブロッカーに当たる、ブロッカーから抜ける)のみを集めればよい
![Page 21: First Order](https://reader033.vdocuments.mx/reader033/viewer/2022052315/554a15c5b4c905825d8b4e32/html5/thumbnails/21.jpg)
• 解析解
• 単純な物体なら簡単
• 半解析解(semi-analytic)
• レイトレを使う
• 十分密にやれば精度は十分?
V が変化する所を見つける
![Page 22: First Order](https://reader033.vdocuments.mx/reader033/viewer/2022052315/554a15c5b4c905825d8b4e32/html5/thumbnails/22.jpg)
解析解
x
αs
αe
球、四角形などなら、support line を計算すれば OK
![Page 23: First Order](https://reader033.vdocuments.mx/reader033/viewer/2022052315/554a15c5b4c905825d8b4e32/html5/thumbnails/23.jpg)
半解析解
x
11
1
00 0 1 11
V が変化する場所
![Page 24: First Order](https://reader033.vdocuments.mx/reader033/viewer/2022052315/554a15c5b4c905825d8b4e32/html5/thumbnails/24.jpg)
テスト 2D
![Page 25: First Order](https://reader033.vdocuments.mx/reader033/viewer/2022052315/554a15c5b4c905825d8b4e32/html5/thumbnails/25.jpg)
• 数値解 : ガタガタ
• 提案された手法 : リファレンスと一致
![Page 26: First Order](https://reader033.vdocuments.mx/reader033/viewer/2022052315/554a15c5b4c905825d8b4e32/html5/thumbnails/26.jpg)
テスト 3D
![Page 27: First Order](https://reader033.vdocuments.mx/reader033/viewer/2022052315/554a15c5b4c905825d8b4e32/html5/thumbnails/27.jpg)
• 1/10 解像度の点位置で、半球のビジビリティを計算
• 1/100 のピクセル数に相当
• 残りは Visibility gradient を使って補間
• theta=100, phi=100 の解像度で半解析
• 実質 1 pixel あたり 100 レイ
![Page 28: First Order](https://reader033.vdocuments.mx/reader033/viewer/2022052315/554a15c5b4c905825d8b4e32/html5/thumbnails/28.jpg)
問題• 実際のシーンでは、半解析でビジビリティ勾配を計算
• 疎に計算すると、細かいジオメトリを miss する可能性
• The 3D visibility complex[Durand 2002] が使えるだろう
• Guided visibility sampling[Wonka 2006] も?
![Page 29: First Order](https://reader033.vdocuments.mx/reader033/viewer/2022052315/554a15c5b4c905825d8b4e32/html5/thumbnails/29.jpg)
まとめ• ビジビリティ関数を Heaviside 関数で置き換え
• 微分を積分すると、有限点の総和
• 点の数は V の非連続点の数
• 数値微分に比べて、正確
• 既存レイトレに用意に組み込み可能
• additional なレイトレはいらない
• V の不連続位置が分かればよい
![Page 30: First Order](https://reader033.vdocuments.mx/reader033/viewer/2022052315/554a15c5b4c905825d8b4e32/html5/thumbnails/30.jpg)
個人的感想• diffuse 面、面光源のシーンでは有用
• specular は別に分けて計算すればよい
• 屈折、opaque 屈折、glossy ではどうだろうか?
• 細かいジオメトリ(毛、破片)があるシーンではどうだろうか?
• どうせ”ボケ”るから問題ないか?
![Page 31: First Order](https://reader033.vdocuments.mx/reader033/viewer/2022052315/554a15c5b4c905825d8b4e32/html5/thumbnails/31.jpg)
References 1/2• [Ramamoorthi 2007] A First Order Analysis of Lighting, Shading, and
Shadows
• http://www1.cs.columbia.edu/~ravir/papers/firstorder/index.html
• [Durand 2002] The 3D visibility complex : a new approach to the problems of accurate visibility.
• [Durand 2005] A Frequency analysis of Light Transport
• http://people.csail.mit.edu/fredo/
• [Durand 1997] The Visibility Skeleton: A Powerful And Efficient Multi-Purpose Global Visibility Tool
• [Wonka 2006] Guided Visibility Sampling
• [Mattausch 2006] Adaptive Visibility-Driven View Cell Construction
![Page 32: First Order](https://reader033.vdocuments.mx/reader033/viewer/2022052315/554a15c5b4c905825d8b4e32/html5/thumbnails/32.jpg)
References 2/2
• [Arvo 1997] The Irradiance Jacobian for Partially Occluded Polyhedral Sources
• [Arvo 2002] Closed-Form Expressions for Irradiance from Non-Uniform Lambertian Luminaire. Part 1 & II
• [Arvo 2000] Perterbation Methods for Interactive Specular Reflections
• http://www.ics.uci.edu/~arvo/papers.html