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
最新のDirectX12で使えるレイトレ周りの機能追加について
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Pocol
November 15, 2025
Programming
840
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
最新のDirectX12で使えるレイトレ周りの機能追加について
レイトレ合宿11のセミナー資料で使用したスライドです。
Pocol
November 15, 2025
More Decks by Pocol
See All by Pocol
中級グラフィックス入門~効率的なメッシュレット描画~
projectasura
5
7.5k
Hardware-Raytracingを用いたフォトンマッピングの実装について
projectasura
1
910
ReSTIRについて
projectasura
6
3.4k
初心者向けシェーダ講習会 第2回
projectasura
0
500
初心者向けシェーダ講習会 第1回
projectasura
0
720
中級グラフィックス入門~色彩工学編~
projectasura
21
12k
中級グラフィックス入門 ~シャドウマッピング総まとめ~
projectasura
5
4.9k
Other Decks in Programming
See All in Programming
TAKTでAI駆動開発の品質を設計する
j5ik2o
6
1.2k
「エンジニアインターン、どうやって取った?」準備のリアルを語るLT会 Progate BAR
akiomatic
0
130
並列実装の現場、2ヶ月間実務でAIを使い倒したAIもPCも私も限界が近い
ming_ayami
0
120
生成AI時代にこそ効くGo | Why Go Works in the Age of Generative AI
mom0tomo
8
3.2k
AIとASP.NET Coreで雑Webアプリを作った話
mayuki
0
500
Make SRE Operations Easier with Azure SRE Agent
kkamegawa
0
5.3k
Vite+ Unified Toolchain for the Web
naokihaba
0
240
依存関係から依存物へ―Dependencyという言葉の歴史をひも解く
j_lee
0
110
New "Type" system on PicoRuby
pocke
1
810
Webフレームワークの ベンチマークについて
yusukebe
0
160
Oxlintのカスタムルールの現況
syumai
6
1.1k
Contextとはなにか
chiroruxx
0
280
Featured
See All Featured
Designing for humans not robots
tammielis
254
26k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
430
Code Review Best Practice
trishagee
74
20k
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
1
2k
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
230
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.5k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.8k
Navigating Weather and Climate Data
rabernat
0
220
Mind Mapping
helmedeiros
PRO
1
240
Unsuck your backbone
ammeep
672
58k
Embracing the Ebb and Flow
colly
88
5.1k
Music & Morning Musume
bryan
47
7.2k
Transcript
最新のDirectX12で使える レイトレ周りの機能追加について Pocol@ProjectAsura
背景 GDC 2025, “DirectX State of the Union: Raytracing and
PIX Workflows (Presented by Microsoft)” DXR1.2の機能を使うと 6.6ms程度処理負荷が減るらしい 何それ? ガチで?
背景 GDC 2025, “DirectX State of the Union: Raytracing and
PIX Workflows (Presented by Microsoft)” 本当ならば これは是非使いたい!
おしながき DXR 1.2から追加された以下の2つの機能について紹介します。 Shader Execution Reordering Opacity Micromaps
Shader Execution Reordering (SER) シェーダ実行順序の再並び替え
Shader Execution Reorderingって? どんな機能? その名の通りにシェーダの実行順序を並び替えてくれる機能 何がうれしいの? 並び替えることによってダイバージェンスを減らせる可能性やキャッシュ効率を向上できる可能性がある。 [Nishikawa 2024]より引用
どうやって使うの? ・シェーダ側は下記のように1個関数呼び出すだけ。 ・引数に何を優先度にして並び替えするかを渡す。 「 dx:: 」を今は つけないといけないらしい…
どういうときに効果がでる? 効果が出るのは「多数の異なる分岐・マテリアルが混在する」ケース。 単純なレイシーンではほぼ効果なし。かえって遅くなるケースもある。 cf. もんしょの巣穴 DirectXの話 第181回 Shader Execution Reordering
https://sites.google.com/site/monshonosuana/directx%E3%81%AE%E8%A9%B1/directx%E3%81%AE%E8%A9%B1-%E7%AC%AC181%E5%9B%9E?authuser=0 きちんとパフォーマンス計測し,使用するかどうかを適宜判断しましょう。
動くサンプルコードは? GithubのDirectX-Graphics-Samplesにある。 https://github.com/microsoft/DirectX-Graphics-Samples/tree/master Samples > Desktop > D3D12RayTracing > src
> D3D12RaytracingSakuraForestSER Raytracing.hlsl
PIXでサポートされている? まだ正式サポートされていない。プレビュー状態。 PIX 2050.30-previewで機能提供はされている。
Opacity Micromaps (OMM) 不透明マイクロマップ
Opacity Micromaps (OMM) どんな機能? ・不透明度を表す,1つのポリゴンよりも小さなジオメトリ情報をBLASに持たせる機能。 ・ 何がうれしいの? ・アルファテストのためのAnyHitShaderの起動を回数を減らせるため、 高速化が効果が見込める。
どうやって使うの? ・BLASの作成時に追加対応を行う。シェーダ側には新しいAPIはない。 ・BLASにOpacity Micromapsのデータを渡すようにすればいい。 ・Opacity Micromapsのデータは事前に作成しておく必要がある。
動くサンプルコードは? GithubのDirectX-Graphics-Samplesにある。 https://github.com/microsoft/DirectX-Graphics-Samples/tree/master Samples > Desktop > D3D12RayTracing > src
> D3D12RaytracingOpacityMicromaps
PIXでサポートされている? はい。PIX 2505.30から 詳細は下記のPIXのブログ投稿を参照されたし。 https://devblogs.microsoft.com/pix/pix-2505-30-and-2505-30-preview/
OMMって、どうやって作ればいいの? NVIDIAから提供されているOMM SDKを利用する。 OMM-Samplesにてサンプルが提供されている。 https://github.com/NVIDIA-RTX/OMM-Samples アルファテクスチャ, アルファテスト値, ジオメトリ(頂点バッファ,インデックスバッファ) などを渡すことによってベイクしてくれる。
まとめ DXR 1.2から追加された以下の2つの機能について紹介しました。 Shader Execution Reordering 実行順番を並び替えてダイバージェンスやキャッシュ効率を高められる可能性がある。 シェーダ上では1個関数を呼び出せばいい。 PIXはまだプレビュー段階。 Opacity
Micromaps (OMM) アルファテストのためのAnyHitShaderの起動回数を低減し、高速化。 BLAS構築時に事前作成したOMMを渡すように変更すればいい。 PIXは 2505.30からサポートされている。
以上!