Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Petrichor render 2018 @ Ray tracing Camp 6
Search
Pheema
September 01, 2018
Programming
0
210
Petrichor render 2018 @ Ray tracing Camp 6
"レイトレ合宿6" (
https://sites.google.com/site/raytracingcamp6/
) に提出した自作レンダラーPetrichorの紹介スライドです。
Pheema
September 01, 2018
Tweet
Share
More Decks by Pheema
See All by Pheema
レイトレ合宿5: 自作レンダラー紹介 / Introduction of the my renderer in Ray Tracing Camp 5
pheema
0
590
レイトレ合宿4!? レンダラー紹介 (@_Pheema_)
pheema
0
580
Other Decks in Programming
See All in Programming
GitHub Actionsで泣かないためにやっておきたい設定 / Recommended GHA settings to avoid crying
pinkumohikan
3
490
Doctrine ORMでValue Objectを扱う方法4選 #phpstudy / 4 ways to handle Value Objects with Doctrine ORM
77web
4
110
Javaエンジニアのための Nodejs/Nuxt3入門
hidekatsu_izuno
0
280
SwiftUI Performance 不要なViewの再描画と更新を抑える
bigamitiongit
1
160
1BRC--Nerd Sniping the Java Community
gunnarmorling
0
300
HUIT新歓2024「競技プログラミング、やってみませんか?」
slephy2784
1
250
try! Swift Tokyo 初参加報告LT
hinakko2
0
190
ADRを一年運用してみた/adr_after_a_year
hanhan1978
7
2.2k
GraphQLサーバの構成要素を整理する #ハッカー鮨 #tsukijigraphql / graphql server technology selection
izumin5210
2
260
Milestoner
bkuhlmann
1
400
pixivアプリでマルチモジュールを実現するまで
gatosyocora
1
130
コードレビューで学ぶ!Kotlinオブジェクト指向デザインパターン
akkie76
2
180
Featured
See All Featured
Web Components: a chance to create the future
zenorocha
305
41k
For a Future-Friendly Web
brad_frost
171
8.9k
Keith and Marios Guide to Fast Websites
keithpitt
408
22k
The Brand Is Dead. Long Live the Brand.
mthomps
48
28k
Into the Great Unknown - MozCon
thekraken
10
980
Building Effective Engineering Teams - LeadDev
addyosmani
27
1.8k
ParisWeb 2013: Learning to Love: Crash Course in Emotional UX Design
dotmariusz
104
6.6k
Being A Developer After 40
akosma
56
580k
Code Reviewing Like a Champion
maltzj
513
39k
Building Flexible Design Systems
yeseniaperezcruz
318
37k
Adopting Sorbet at Scale
ufuk
67
8.6k
How STYLIGHT went responsive
nonsquared
92
4.8k
Transcript
Petrichor 2018 @_Pheema_ 2018/09/01 - 2018/09/02 レイトレ合宿6
レンダリング結果 2018/09/01 - 2018/09/02 6 レイトレ合宿 2 - 暗めの室内シーン *
1080x1920(スマホの壁紙サイズ!) * 廃墟っぽい感じとか良いよね * 空間だけだと寂しいので、後から階段を付け足し
レンダラーの概要 - 今年取り組んだこと * Multiple importance sampling (MIS) のバグ修正 *
環境マップの重点サンプリング * SAH-based BVH * Normal map 3 2018/09/01 - 2018/09/02 レイトレ合宿6
BVH 年々レンダリング時間が短くなっているので、BVH構築は速く処理したい - 今年 * SAH-based Binned BVH • “On
fast Construction of SAH-based Bounding Volume Hierarchies” [Wald2007] * BVH構築、トラバース速度がましになった(以前が遅すぎた) - 昨年 * AABBの一番長い辺を2等分していた * でかいポリゴン(例:でかい床面)が1つでもあると、トラバースが遅くなって詰む * ソート処理が適当すぎて激重 4 2018/09/01 - 2018/09/02 レイトレ合宿6
環境マップの重点サンプリング 太陽が写っているような、輝度の差が激しい環境マップを使用したい - 今年 * 環境マップの重点サンプリング • 参考資料 • “Monte
Carlo Rendering with Natural Illumination” • “積分とサンプリングと検定” • 輝度が高いピクセルを重点的にサンプリングする - 昨年 * 環境マップ上の太陽が小さすぎて全然太陽の値を取れない * 分散がでかくなって死ぬ 5 2018/09/01 - 2018/09/02 レイトレ合宿6
環境マップの重点サンプリング 2018/09/01 - 2018/09/02 6 レイトレ合宿 6 “HDRI Haven” の環境マップを使用
累積分布関数 2018/09/01 - 2018/09/02 6 レイトレ合宿 7
環境マップの重点サンプリング 2018/09/01 - 2018/09/02 6 レイトレ合宿 8 重点サンプリング:OFF 重点サンプリング:ON →環境マップ上の太陽を拾えるように
環境マップの重点サンプリング - 失敗点 * 室内に存在するほとんどの点からは太陽が見えない… • 太陽を直接サンプリングしたところで、壁に遮られる場合が多い • ライトポータル等を実装するべきだった? •
“Portal-Masked Environment Map Sampling” [BNJ15] 9 2018/09/01 - 2018/09/02 レイトレ合宿6
今後について - シーン * 目標となるシーンを決めて、アルゴリズムを選定する * 「シーンがさき アルゴリズムはあと」 * 提出直前に本番シーンに切り替えてハングする悲劇を避ける
- レンダリングの手法 * プログラムを直しつつ、PTで行けるところまでいってみたい * 余裕があったら他の手法にも取り組む(PSSMLTとか興味あり) 10 2018/09/01 - 2018/09/02 レイトレ合宿6
今後について - デバッグ用の可視化 * 文字でのデバッグ辛すぎ問題 • BVH等の構造が把握できなくて死 • 突然のNaN, Inf
* テクスチャとかの中身も見たい - CI * 定期的に特定のシーンをレンダリング • レンダリング画像差分の検知 * テストの実行 11 2018/09/01 - 2018/09/02 レイトレ合宿6
まとめ - 時間をかけた分だけ綺麗な絵がでて楽しい * レンダラー育成ゲーム 2018/09/01 - 2018/09/02 6 レイトレ合宿
12
Petrichor 2018 @_Pheema_ 2018/09/01 - 2018/09/02 レイトレ合宿6