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
830
0
Share
最新のDirectX12で使えるレイトレ周りの機能追加について
レイトレ合宿11のセミナー資料で使用したスライドです。
Pocol
November 15, 2025
More Decks by Pocol
See All by Pocol
中級グラフィックス入門~効率的なメッシュレット描画~
projectasura
5
7.5k
Hardware-Raytracingを用いたフォトンマッピングの実装について
projectasura
1
900
ReSTIRについて
projectasura
6
3.4k
初心者向けシェーダ講習会 第2回
projectasura
0
500
初心者向けシェーダ講習会 第1回
projectasura
0
710
中級グラフィックス入門~色彩工学編~
projectasura
21
12k
中級グラフィックス入門 ~シャドウマッピング総まとめ~
projectasura
5
4.9k
Other Decks in Programming
See All in Programming
正しくソフトウェアを作る、前提を疑うための認知の視点 / doubt-premise
minodriven
17
5.6k
dRuby over BLE
makicamel
2
300
Java × distroless で 軽量なコンテナイメージを / Java on Distroless
contour_gara
0
470
AIとRubyの静的型付け
ukin0k0
0
520
プロパティの順序で型推論が壊れる!? TypeScript6.0の修正からContext-Sensitivityの仕組みを追う
bicstone
2
1.3k
Old Dog, New Tricks: The Java 25 Reinvention - JNation
bazlur_rahman
0
140
タクシーアプリ『GO』の バックエンド開発のおける AI利活用と若者のすべて
pyama86
3
1.8k
作って学ぶ、 JSX (TSX) ランタイムの基本
syumai
7
1.5k
権限チェックの一貫性を型で守る TypeScript による多層防御
mnch
4
1.1k
Signal Forms: Beyond the Basics @ngBaguette 2026 in Paris
manfredsteyer
PRO
0
210
技術記事、AIに書かせるか、自分で書くか? 〜それでも私が自分の手で書く理由〜 / #QiitaConference
jnchito
2
1.3k
Claspは野良GASの夢をみるか
takter00
0
160
Featured
See All Featured
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
62k
AI: The stuff that nobody shows you
jnunemaker
PRO
8
680
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
400
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
160
Exploring anti-patterns in Rails
aemeredith
3
390
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.9k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
11
930
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.6k
The Invisible Side of Design
smashingmag
302
52k
Abbi's Birthday
coloredviolet
2
7.9k
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
260
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からサポートされている。
以上!