Upgrade to Pro — share decks privately, control downloads, hide ads and more …

redflash revolution renderer / Raytracing Camp 8

がむ
September 03, 2022
2

redflash revolution renderer / Raytracing Camp 8

レイトレ合宿8の本戦プレゼン資料です。
https://gam0022.net/blog/2022/10/17/rtcamp8/

がむ

September 03, 2022
Tweet

Transcript

  1. 基本機能
 • Unidirectional Path Tracing
 ‣ implemented in NVIDIA® OptiX


    • Disney BRDF
 • Next Event Estimation (Direct Light Sampling)
 • Multiple Importance Sampling
 • Primitives
 ‣ Sphere
 ‣ Mesh
 ‣ Distance Function (Raymarching )
 • ACES Filmic Tone Mapping
 • Deep Learning Denoising
 2
  2. レンダラーの出力設定 
 • 解像度
 ‣ 1920x1080
 
 • フレーム数 


    ‣ 300フレーム 
 • 30FPS
 • 10秒(今回の上限)
 4 1フレーム2秒 で1920x1080描画!

  3. レイマーチングの高速化 
 • 速度比較!レイマーチングvsレイキャスティング | gam0022.net 
 12 
 


    レイマーチング はレイキャストより15~20倍くらい重い 
 (MengerSpongeで計測した場合) 

  4. レイマーチングの高速化 
 • 通常のレイマーチング 
 ‣ カメラの座標からレイマーチングをスタートする 
 
 •

    少し工夫したレイマーチング 
 ‣ AABBの表面からスタート(少し高速化できる) 
 
 • 今回のレイマーチング 
 ‣ 1サンプリング目のDepthを保存 
 ‣ 2サンプリング以降は、カメラからレイをDepthだけ進めた座標からスタート 
 ‣ プライマリレイの交差判定は劇的に高速化 
 • 1回目のmarching loopで衝突判定が終了 
 • marching loopが300回→1回であれば、300倍に高速化 
 ‣ セカンダリレイの交差判定には効果なし 
 • roughnessが0に近い完全鏡面のようなマテリアルなら 
 セカンダリレイのDepthを保存するのは意味があるかもしれない 
 13
  5. レンダリングの戦略 
 • 1フレームあたり2回OptiXのlaunch
 ‣ 1回目のlaunch
 • シーンの重さとGPU性能をベンチマーク
 • 1フレームあたりのサンプリング数を決定


    ‣ 2回目のlaunch
 • 制限時間ギリギリのサンプリング数でレンダリング
 • 1回目のlaunchの描画結果も平均値に加算
 16 どんな環境でも制限時間以内にレンダリング完了