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
230
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
730
レイトレ合宿4!? レンダラー紹介 (@_Pheema_)
pheema
0
690
Other Decks in Programming
See All in Programming
After go func(): Goroutines Through a Beginner’s Eye
97vaibhav
0
240
NetworkXとGNNで学ぶグラフデータ分析入門〜複雑な関係性を解き明かすPythonの力〜
mhrtech
3
1k
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
160
フロントエンド開発に役立つクライアントプログラム共通のノウハウ / Universal client-side programming best practices for frontend development
nrslib
7
3.9k
私達はmodernize packageに夢を見るか feat. go/analysis, go/ast / Go Conference 2025
kaorumuta
2
500
CSC305 Lecture 03
javiergs
PRO
0
240
Playwrightはどのようにクロスブラウザをサポートしているのか
yotahada3
7
2.3k
CSC509 Lecture 04
javiergs
PRO
0
300
Signals & Resource API in Angular: 3 Effective Rules for Your Architecture @BASTA 2025 in Mainz
manfredsteyer
PRO
0
110
Go Conference 2025: Goで体感するMultipath TCP ― Go 1.24 時代の MPTCP Listener を理解する
takehaya
7
1.6k
私はどうやって技術力を上げたのか
yusukebe
43
17k
Web技術を最大限活用してRAW画像を現像する / Developing RAW Images on the Web
ssssota
2
1.2k
Featured
See All Featured
Why You Should Never Use an ORM
jnunemaker
PRO
59
9.6k
How GitHub (no longer) Works
holman
315
140k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
36
2.5k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
140
34k
The Language of Interfaces
destraynor
162
25k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
Git: the NoSQL Database
bkeepers
PRO
431
66k
Building a Modern Day E-commerce SEO Strategy
aleyda
43
7.7k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
19
1.2k
Unsuck your backbone
ammeep
671
58k
GitHub's CSS Performance
jonrohan
1032
460k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
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