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
Babylon.jsで作ったsceneをレイトレーシングで映えさせる
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
turamy
July 10, 2022
Programming
1.9k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Babylon.jsで作ったsceneをレイトレーシングで映えさせる
turamy
July 10, 2022
Other Decks in Programming
See All in Programming
技術的負債解消で開発者の未来を開く- AIの力でコード刷新
kmd2kmd
0
120
はてなアカウント基盤 State of the Union
cockscomb
1
900
Observability in Practice:Grafana 與 Edge Device SRE 的那些事
blueswen
0
180
キャリア迷子上等 ─ "ない道"は自分で作ればいい
16bitidol
3
2.3k
JavaDoc 再入門
nagise
1
420
「AIで開発し、AIを届ける」をEvalでつなぐ 〜AIネイティブに始めるプロダクト開発の実践〜 / Connecting "Develop with AI, deliver AI" with Eval
rkaga
4
5.4k
Oxlintのカスタムルールの現況
syumai
6
1.2k
メソッドのジェネリクスでGoの夢は広がるか? / Kyoto.go #65
utgwkk
3
970
代数的データ型って何が嬉しいの? #frontend_phpcon_do
kajitack
8
3.8k
ローカルLLMを使ってB2Bサービスを作っていての学び
yaotti
0
220
不変条件と整合性境界—ビジネスが決める設計判断と実現パターン / Invariants and Consistency Boundaries
nrslib
14
5.9k
Hatena Engineer Seminar #37「言語モデルの活用に関する研究」
slashnephy
0
210
Featured
See All Featured
Paper Plane
katiecoart
PRO
1
52k
4 Signs Your Business is Dying
shpigford
187
22k
Heart Work Chapter 1 - Part 1
lfama
PRO
8
36k
Accessibility Awareness
sabderemane
1
140
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
4k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
250
1.3M
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
870
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.5k
The Limits of Empathy - UXLibs8
cassininazir
1
370
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.7k
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.3k
Transcript
Babylon.jsでレイトレーシング Babylon.js ゆるほめLT会
自己紹介 つらみぃ ・半導体装置の光学系開発 構造解析・光学シミュレーションとか ・Babylon.js歴1.5ヶ月 ブラウザでGPGPUできるのすごい! まずはBabylon.jsでシェーダーを弄る練習 @turamy3D
レイトレーシングって? 視線の方向にレイを打ち出し、 反射・屈折する光の量を計算して色を決める
やったこと Mesh, Materialデータを TextureのRGBに書込み シェーダーに 送る レイトレの結果を Canvasに描画 Babylon.js Scene
Texture Ray Tracing Shader
レイトレーシングのすごいところ でも計算コストはとても高い。。。 多重反射・屈折 自然なボケ
自由度の高いマテリアル表現
気づき ・レイトレーシングはシンプルだけど超強力 ・クロスプラットフォームかつ特別な環境なしに GPGPUできるのは魅力的 (しかもBabylon.jsを使えば簡単!) ・次はBabylon.js 5.0で対応したWebGPUを使ってみたい (もっと高速らしい)
Appendix
Playgroundデモ ・水面の反射・屈折のデモ ★★★★ https://www.babylonjs-playground.com/#MHTAGR#3 ・多重反射・屈折のデモ ★★★★ https://www.babylonjs-playground.com/#8EI65X#5 ・レンズボケのデモ ★ https://www.babylonjs-playground.com/#BD7XZ9#3
・マテリアル表現のデモ ★★ https://www.babylonjs-playground.com/#5IS6A5#2 ※★の数が多いほどレンダリング負荷高め
参考文献 [1] Tomas Akenine-Moller, Eric Haines, Naty Hoffman, Angelo Pesce,
Sebastien Hillaire, Michał Iwanicki, 中本 浩 訳, “リアルタイムレンダリング 第4版”, 株式会社 ボーンデジタル, 2019 https://www.borndigital.co.jp/book/15291.html [2] Fletcher Dunn, Ian Parberry, 松田 晃一 訳, “実例で学ぶゲーム3D数学”, O'Reilly Japan, 2008 https://www.oreilly.co.jp/books/9784873113777/ https://gamemath.com/ [3] Brian Karis, “Real Shading in Unreal Engine 4”, Epic Games, 2013 https://de45xmedrsdbp.cloudfront.net/Resources/files/2013SiggraphPresentationsNotes-26915738.pdf [4] Mark Jarzynski, Marc Olano, “Hash Functions for GPU Rendering”, Journal of Computer Graphics Techniques (JCGT), vol. 9, no. 3, 21-38, 2020 https://jcgt.org/published/0009/03/02/ [5] 細田 翔, “gam0022.net” https://gam0022.net/ [6] Playgroundで見つけたパストレーシングのデモ : https://playground.babylonjs.com/#PW0QJI#11