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
730
0
Share
最新のDirectX12で使えるレイトレ周りの機能追加について
レイトレ合宿11のセミナー資料で使用したスライドです。
Pocol
November 15, 2025
More Decks by Pocol
See All by Pocol
中級グラフィックス入門~効率的なメッシュレット描画~
projectasura
5
6.9k
Hardware-Raytracingを用いたフォトンマッピングの実装について
projectasura
1
850
ReSTIRについて
projectasura
6
3k
初心者向けシェーダ講習会 第2回
projectasura
0
490
初心者向けシェーダ講習会 第1回
projectasura
0
700
中級グラフィックス入門~色彩工学編~
projectasura
21
12k
中級グラフィックス入門 ~シャドウマッピング総まとめ~
projectasura
5
4.7k
Other Decks in Programming
See All in Programming
Nuxt Server Components
wattanx
0
260
今こそ押さえておきたい アマゾンウェブサービス(AWS)の データベースの基礎 おもクラ #6版
satoshi256kbyte
1
230
Smarter Angular mit Transformers.js & Prompt API
christianliebel
PRO
1
120
Rethinking API Platform Filters
vinceamstoutz
0
11k
PCOVから学ぶコードカバレッジ #phpcon_odawara
o0h
PRO
0
250
一度始めたらやめられない開発効率向上術 / Findy あなたのdotfilesを教えて!
k0kubun
4
2.9k
車輪の再発明をしよう!PHP で実装して学ぶ、Web サーバーの仕組みと HTTP の正体
h1r0
3
510
의존성 주입과 모듈화
fornewid
0
120
夢の無限スパゲッティ製造機 -実装篇- #phpstudy
o0h
PRO
0
200
PHPのバージョンアップ時にも役立ったAST(2026年版)
matsuo_atsushi
0
300
Java 21/25 Virtual Threads 소개
debop
0
340
今からFlash開発できるわけないじゃん、ムリムリ! (※ムリじゃなかった!?)
arkw
0
190
Featured
See All Featured
A Tale of Four Properties
chriscoyier
163
24k
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
1
2k
Optimising Largest Contentful Paint
csswizardry
37
3.6k
Mobile First: as difficult as doing things right
swwweet
225
10k
Art, The Web, and Tiny UX
lynnandtonic
304
21k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
The Language of Interfaces
destraynor
162
26k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
200
The Cult of Friendly URLs
andyhume
79
6.8k
How Software Deployment tools have changed in the past 20 years
geshan
0
33k
Leo the Paperboy
mayatellez
7
1.6k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.7k
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からサポートされている。
以上!