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
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Pocol
November 15, 2025
Programming
810
0
Share
最新のDirectX12で使えるレイトレ周りの機能追加について
レイトレ合宿11のセミナー資料で使用したスライドです。
Pocol
November 15, 2025
More Decks by Pocol
See All by Pocol
中級グラフィックス入門~効率的なメッシュレット描画~
projectasura
5
7.4k
Hardware-Raytracingを用いたフォトンマッピングの実装について
projectasura
1
880
ReSTIRについて
projectasura
6
3.3k
初心者向けシェーダ講習会 第2回
projectasura
0
500
初心者向けシェーダ講習会 第1回
projectasura
0
710
中級グラフィックス入門~色彩工学編~
projectasura
21
12k
中級グラフィックス入門 ~シャドウマッピング総まとめ~
projectasura
5
4.8k
Other Decks in Programming
See All in Programming
開発体験を左右するライブラリの API 設計 - GraphQL スキーマ構築ライブラリから考える #tskaigi
izumin5210
2
520
Transactional Change Stream Processing With Debezium and Apache Flink
gunnarmorling
1
120
誰も頼んでない機能を出荷した話
zekutax
0
130
Modding RubyKaigi for Myself
yui_knk
0
430
Why Laravel apps break—Mastering the fundamentals to keep them maintainable
kentaroutakeda
1
180
TSKaigi 2026 TypeScriptバックエンドのオブザーバビリティ戦略 — Datadog × NestJSの実践
taiseiyamamotoan
1
180
AgentCore Optimizationを始めよう!
licux
4
280
AIエージェントの隔離技術の徹底比較
kawayu
0
420
SkillsをS3 Filesに置く時のあれこれ
watany
4
1.8k
AI Agent と正しく分析するための環境作り
yoshyum
2
590
AIチームを指揮するOSS「TAKT」活用術 / How to Use “TAKT,” an OSS Tool for Orchestrating AI Teams
nrslib
5
620
柔軟なPDFレイアウトエディタを支える型システム設計 — Discriminated UnionとConditional Typeの実践
minako__ph
3
570
Featured
See All Featured
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
1
2.7k
Discover your Explorer Soul
emna__ayadi
2
1.1k
Google's AI Overviews - The New Search
badams
0
1k
Evolving SEO for Evolving Search Engines
ryanjones
0
200
Unsuck your backbone
ammeep
672
58k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
250
1.3M
How to make the Groovebox
asonas
2
2.2k
How Software Deployment tools have changed in the past 20 years
geshan
0
34k
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
4k
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
Un-Boring Meetings
codingconduct
0
300
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
200
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からサポートされている。
以上!