拙訳
関連研究
- 多光源レンダリング
- VPL [Keller 1997Keller, A. 1997. Instant radiosity. Proceedings of the 24th annual conference on computer graphics and interactive techniques 49–56. 10.1145/258734.258769. https://dl.acm.org/doi/pdf/10.1145/258734.258769.]
- Reflective Shadow Maps [Dachsbacher and Stamminger 2005Dachsbacher, C. and Stamminger, M. 2005. Reflective shadow maps. Proceedings of the 2005 symposium on interactive 3D graphics and games 203–231. 10.1145/1053427.1053460.]
- 点光源や平行光源からのsingle-bounceのVPL
- Imperfect Shadow Maps [Ritschel et al. 2008Ritschel, T., Grosch, T., Kim, M. H., Seidel, H.-P., Dachsbacher, C. and Kautz, J. 2008. Imperfect shadow maps for efficient computation of indirect illumination. ACM SIGGRAPH asia 2008 papers. 10.1145/1457515.1409082. https://jankautz.com/publications/ISM_SIGAsia08.pdf.]
- 多光源でのシャドウマップ
- Bidirectional Reflective Shadow Mapping や Adaptive Imperfect Shadow Maps [Ritschel et al. 2011Ritschel, T., Eisemann, E., Ha, I., Kim, J. D. K. and Seidel, H.-P. 2011. Making imperfect shadow maps view-adaptive: High-quality global illumination in large dynamic scenes. Computer Graphics Forum 30, 8, 2258–2269. 10.1111/j.1467-8659.2011.01998.x.]
- 視点依存のimportanceを考慮する
- Lightcuts [Walter et al. 2005Walter, B., Fernandez, S., Arbree, A., Bala, K., Donikian, M. and Greenberg, D. P. 2005. Lightcuts: a scalable approach to illumination. ACM SIGGRAPH 2005 papers 1098–1107. 10.1145/1186822.1073318. https://www.graphics.cornell.edu/~bjw/lightcuts.pdf.]
- 多光源でのradiance計算(オフラインレンダリング用)
- Interleaved Sampling や Geometry-aware Filtering [Segovia et al. 2006Segovia, B., Iehl, J. C., Mitanchey, R. and Péroche, B. 2006. Non-interleaved deferred shading of interleaved sample patterns. Proceedings of the 21st ACM SIGGRAPH/EUROGRAPHICS symposium on graphics hardware 53–60. 10.1145/1283900.1283909. https://liris.cnrs.fr/Documents/Liris-2476.pdf.; Ritschel et al. 2011Ritschel, T., Eisemann, E., Ha, I., Kim, J. D. K. and Seidel, H.-P. 2011. Making imperfect shadow maps view-adaptive: High-quality global illumination in large dynamic scenes. Computer Graphics Forum 30, 8, 2258–2269. 10.1111/j.1467-8659.2011.01998.x.]
- リアルタイムでの大まかなradiance推定
- 一致推定量となり得る
- 一致性があると、サンプル数の増加に従って推定値が母数に収束していく
- 光源を一様にサンプリングしているため、分散が大きくなったりサンプリングしすぎたりして問題になる
- 一致推定量となり得る
- リアルタイムでの大まかなradiance推定
- ライトカリング
- Splatting [Dachsbacher and Stamminger 2006Dachsbacher, C. and Stamminger, M. 2006. Splatting indirect illumination. Proceedings of the 2006 symposium on interactive 3D graphics and games 93–100. 10.1145/1111411.1111428.]
- Splattingのフィルレート低減のためのadaptive multiresolution手法[Nichols and Wyman 2010Nichols, G. and Wyman, C. 2010. Interactive indirect illumination using adaptive multiresolution splatting. IEEE Transactions on Visualization & Computer Graphics 16, 05, 729–741. 10.1109/TVCG.2009.97. https://cwyman.org/papers/tvcg10_adaptMultiresSplat_Preprint.pdf.]
- Tiled lighting [Balestra and Engstad 2008Balestra, C. and Engstad, P.-K. 2008. The Technology of UNCHARTED: DRAKE'S FORTUNE. Game Developers Conference. https://www.slideshare.net/slideshow/the-technology-of-uncharted-drakes-fortune/6925153.; Andersson 2011Andersson, J. 2011. DirectX 11 Rendering in Battlefield 3. Game Developers Conference. https://www.ea.com/frostbite/news/directx-11-rendering-in-battlefield-3.]
- Clustered shading [Olsson et al. 2012Olsson, O., Billeter, M. and Assarsson, U. 2012. Clustered deferred and forward shading. Proceedings of the fourth ACM SIGGRAPH / eurographics conference on high-performance graphics 87–96. 10.2312/EGGH/HPG12/087-096. https://www.cse.chalmers.se/~uffe/clustered_shading_preprint.pdf.]
- 2.5D culling [Harada 2012Harada, T. 2012. A 2.5D Culling for Forward+. Technical Briefs. ACM SIGGRAPH Asia. 10.1145/2407746.2407764. https://www.slideshare.net/slideshow/a-25d-culling-for-forward-siggraph-asia-2012/34909590.]
- ライトカリング向けシャドウイング
- Forward+と組み合わせるray-traced shadows [Harada et al. 2013Harada, T., McKee, J. and Yang, J. C. 2013. Forward+: A Step Toward Film-Style Shading in Real Time. GPU Pro 4 277–298.]
- Clustered shadingを用いたvirtual shadow maps [Olsson et al. 2014Olsson, O., Sintorn, E., Kämpe, V., Billeter, M. and Assarsson, U. 2014. Efficient virtual shadow maps for many lights. Proceedings of the 18th meeting of the ACM SIGGRAPH symposium on interactive 3D graphics and games 87–96. 10.1145/2556700.2556701. https://www.cse.chalmers.se/~d00sint/more_efficient/clustered_shadows_tvcg.pdf.]
- 直接照明を想定して作られている
確率論的ライトカリング
- 確率論的なフォールオフ関数を導入する
- ライトがそのシェーディング点にとって重要でない場合に確率論的な方法で取り除く
- フォールオフ関数を確率で無作為にサンプリングするロシアンルーレット法を用いる
- フォールオフ関数は以下のように近似される:
-
- はシェーディング点から光源までの距離
- は分散を制御するための定数
- は一様乱数
- 本論では、を使う
- はspatially-varying importanceを示すため、効率を考えるとに比例させる方が良い
-
- 本手法では、光源1つに対して乱数を1つだけ用意して、シェーディング点すべてで同じ値を使う
- 各光源の影響範囲を固定して、カリングできるようにするため
- その範囲は以下のように求まる:
-
- は単調に減少するので、から導き出せる
- 光源との距離が以上ならその光源をカリングできる
- を制御することで、分散を大きくするかカリングされやすくするかのトレードオフを決める
-
- 誤差限界をもとにを決定する
-
シェーディング点ごとに計算するVPL数がVPL総数に対して劣線形になる
- VPLでは放射強度が光源数に反比例するので、より大きなはより大きなに対して使われる
-
はユーザー指定の誤差限界を用いて以下のように定義される:
-
- はカメラの露出の大きさのパラメータ
- 自動露出などでシェーディング時に分からないときは前フレームの値を使う
- はシェーディング点から光源への向き。ライト方向
- はカメラの露出の大きさのパラメータ
-
導出は以下の通り:
- 確率論的フォールオフ関数の分散は以下のように求まる:
- すると、ある光源に現れる誤差は以下のように求まる:
-
- は光源の放射強度
- は可視性
- はBRDF
- はシェーディング点の位置
- は光源の位置
- はシェーディング点からカメラへの向き。カメラ方向
- は表面の法線
-
- したがって、誤差の最大値は以下のように求まる:
-
- 分散の式からが得られる
- の最大値は明らかに
- は単純化のためにLambertモデル()であると仮定する
- はなので最大値は
-
- 確率論的フォールオフ関数の分散は以下のように求まる:
-
-
この計算では放射強度の指向性を考慮していない
- そのため、点光源用の既存のライトカリングフレームワークを利用できる
- 本論では、ディフューズ面のような低周波数の放射強度を想定している
-
確率論的Tiled Lighting
- 確率論的ライトカリングは、範囲制限されたライトに対応するフレームワークであれば容易に組み込める
- 光源の影響範囲をの式に、フォールオフ関数をに置き換えるだけ
- そのままでも十分キレイに仕上がるが、temporal reprojectionを使ったりフレームごとに乱数列を変えたりすれば画像品質をさらに改善できる
- VPLベース間接照明のデモ
- BRSMおよびAISM [Ritschel et al. 2011Ritschel, T., Eisemann, E., Ha, I., Kim, J. D. K. and Seidel, H.-P. 2011. Making imperfect shadow maps view-adaptive: High-quality global illumination in large dynamic scenes. Computer Graphics Forum 30, 8, 2258–2269. 10.1111/j.1467-8659.2011.01998.x.] と確率論的tiled lightingを組み合わせる
- BRSMでVPLをサンプリングして、間接シャドウを表現するAISMをVPLごとに生成する
- 元論文では、シェーディングコスト削減のためにinterleaved samplingとgeometry-aware filteringを使っている
- interleaved sample patterns [Segovia et al. 2006Segovia, B., Iehl, J. C., Mitanchey, R. and Péroche, B. 2006. Non-interleaved deferred shading of interleaved sample patterns. Proceedings of the 21st ACM SIGGRAPH/EUROGRAPHICS symposium on graphics hardware 53–60. 10.1145/1283900.1283909. https://liris.cnrs.fr/Documents/Liris-2476.pdf.] のnon-interleaved deferred shading を用いた実装 [Ritschel et al. 2008Ritschel, T., Grosch, T., Kim, M. H., Seidel, H.-P., Dachsbacher, C. and Kautz, J. 2008. Imperfect shadow maps for efficient computation of indirect illumination. ACM SIGGRAPH asia 2008 papers. 10.1145/1457515.1409082. https://jankautz.com/publications/ISM_SIGAsia08.pdf.] に確率論的tiled lightingを組み合わせる
- 規則的なサンプリングパターン(8x8とか)にあるピクセルをスクリーンのsubregionsにdeinterleaveして、regionごとに別個のVPLサブセットでシェーディングを行う
- このregionごとに確率論的tiled lightingを使う
- interleaved samplingを用いると、タイルごとに必要なライトリストが小さくなるため、より近いメモリ(LDSとか)に収められる
- 規則的なサンプリングパターン(8x8とか)にあるピクセルをスクリーンのsubregionsにdeinterleaveして、regionごとに別個のVPLサブセットでシェーディングを行う
- BRSMおよびAISM [Ritschel et al. 2011Ritschel, T., Eisemann, E., Ha, I., Kim, J. D. K. and Seidel, H.-P. 2011. Making imperfect shadow maps view-adaptive: High-quality global illumination in large dynamic scenes. Computer Graphics Forum 30, 8, 2258–2269. 10.1111/j.1467-8659.2011.01998.x.] と確率論的tiled lightingを組み合わせる
- Imperfect Shadow Mapsでの点群カリング
- splatting前にライトをカリングする
- 面の裏やVPL表面の下にある点をカリングできる
- 可視性に基づく点群カリングの実装 [Tokuyoshi 2014Tokuyoshi, Y. 2014. Point Cloud Culling for Imperfect Shadow Maps. GPU Compute for Graphics course 8:138–8:140. ACM SIGGRAPH ASIA. https://yusuketokuyoshi.com/papers/2014/Point%20Cloud%20Culling%20for%20Imperfect%20Shadow%20Maps%20(note).pdf.]
- 本手法ではライトの影響範囲が有限なので、点とVPLの距離でもカリングできる
- これによって、splattingパスのコストを劣線形にできる
- 面の裏やVPL表面の下にある点をカリングできる
- splatting前にライトをカリングする
Progressive Path Tracingでのエリアライトサンプリング
- エリアライトへの対応
- 影響範囲を表面の位置ごとに定義し、境界ボリュームをaverage emissive radianceを用いて近似する
- を以下のように修正する:
-
- はaverage emissive radiance
- はライトの面積
-
- Bounding Sphere Treeによるカリング
- multi-bounce path tracingではシェーディング点がランダムに散らばるので、視錐台ベースのクラスタリング手法が使えない
- 代わりに、ライトのBounding Sphere Treeを作って、影響範囲内にあるライトを探す
- 本手法では確率関数が既知なので、multiple importance sampling [Veach and Guibas 1995Veach, E. and Guibas, L. J. 1995. Optimally combining sampling techniques for Monte Carlo rendering. Proceedings of the 22nd annual conference on computer graphics and interactive techniques 419–428. 10.1145/218380.218498. https://dl.acm.org/doi/pdf/10.1145/218380.218498.] が使える
- 1回1回のレンダリング誤差を大きくできるprogressive path tracingの方が、より積極的にカリングできるので、特に有効
- GPU実装
- ツリーの走査とシェーディングを分離する
- 分岐のdivergenceを削減するため
- 可視性判定の計算コストが比較的高いレイトレーシングベースのアルゴリズムでより効果ある
- シェーディング点ごとに影響範囲内にあるライトリストを作る
- メモリ負荷を低減するため、reservoir sampling [Vitter 1985Vitter, J. S. 1985. Random sampling with a reservoir. ACM Trans. Math. Softw. 11, 1, 37–57. 10.1145/3147.3165. https://dl.acm.org/doi/pdf/10.1145/3147.3165.]を使う
- シャドウレイの数を最大1つに制限する
- resampled importance sampling [Talbot et al. 2005Talbot, J., Cline, D. and Egbert, P. 2005. Importance resampling for global illumination. Eurographics symposium on rendering (2005). 10.2312/EGWR/EGSR05/139-146. https://diglib.eg.org/server/api/core/bitstreams/0205c190-16aa-4f85-a26f-c7b3220683b9/content.] を使う
- ライトリストからライト1つをリサンプリングするときのPDFを以下のように定義する:
-
- はライトをリサンプリングするときのimportance
- 単純化のため、を以下のように近似する:
-
- はからそれぞれの頂点への向き
- c付きは三角形の中心に関連する
- はライトの幾何的な法線
-
-
- ライトリストに対するCDFを作って、二分探索でライトをサンプリングする
- 光源の頂点をサンプリングして、以下のサンプル密度によって放射輝度を計算する:
-
- はサンプリングした頂点
- はライトにおける頂点サンプリングPDF(面積ベースだと)
-
- importanceの計算は個のライトを選んだ後に行う
- divergenceを小さくしたり、計算コストを固定したりするため
- ツリーの走査とシェーディングを分離する
Discussion
-
Limitations
- バンディング・アーティファクト
- 通常のロシアンルーレット法で発生する高周波ノイズと比べると、geometry-awareフィルタで低減しにくい
- エリアライトの場合やが小さい場合はそこまで問題にならない
- 指向性importance
- 本論では、高周波な放射強度およびBRDFがライト範囲の計算に含まれていない
- 球状でないバウンディングボリュームを使うことで解決できるかもしれない
- バンディング・アーティファクト
-
今後の課題
- なんやかんやあります