Direct3D 12 の新機能
このトピックでは、さまざまなリリースで使用できる最も重要な新しいDirect3D 12ドキュメントについて説明します。
Direct3D の取得とインストールの詳細については、「プログラミング環境のセットアップDirect3D 12」を参照してください。
Windows 11のDirect3D 12
- DirectX Ultimate a.k.a. D3D_FEATURE_LEVEL_12_2。
- HLSL シェーダー モデル 6.6
- ID3D12Device9 インターフェイスとそのメソッド。
DirectX Agility SDK 1.4 も参照してください。
Windows 10 May 2020 Update
これらの機能と API は、Windows 10 バージョン 2004 (10.0;ビルド 19041)—2020 年 5 月の更新プログラムWindows 10とも呼ばれます。
- ID3D12Device7 インターフェイスとそのメソッド。
- ID3D12Device8 インターフェイスとそのメソッド。
- HLSL シェーダー モデル 6.5 の機能: Direct3D 12 レイトレーシング (DXR) レベル 1.1、メッシュ&増幅シェーダー、サンプラー フィードバック。
- D3D12_HEAP_FLAGS列挙が更新され、D3D12_HEAP_FLAG_CREATE_NOT_RESIDENTとD3D12_HEAP_FLAG_CREATE_NOT_ZEROEDが追加されました。 メモリ割り当ての詳細な制御に関するページを参照してください。
- D3D_SHADER_MODEL列挙体は、D3D_SHADER_MODEL_6_6定数 (試験段階レベルの機能) を追加して更新されました。
Windows 7 でのDirect3D 12
- Windows 7 の Direct3D 12は、開発者が使用できるようになりました。
Windows 10 May 2019 Update
これらの機能と API は、Windows 10 バージョン 1903 (10.0;ビルド 18362)—Windows 10 May 2019 Updateとも呼ばれます。
- 可変レート シェーディング (VRS) レンダリングされたイメージ間で異なる速度でレンダリングパフォーマンス/電力を割り当てることができます。
- HLSL シェーダー モデル 6.4。 HLSL シェーダー モデル 6.4 に追加された機械学習の組み込みについて説明します。
- 列挙D3D12_DRED_VERSION します。 Device Removed Extended Data (DRED) のバージョンを指定する定数を定義します。
- D3D12_FEATURE_DATA_D3D12_OPTIONS6 構造体。 アダプターがメタコマンドに対して提供するサポートのレベルを示します。
- D3D12_FEATURE_DATA_QUERY_META_COMMAND 構造体。 アダプターがメタコマンドに対して提供するサポートのレベルを示します。
- 列挙D3D12_VARIABLE_SHADING_RATE_TIER 。 シェーディング レート レベルを指定する定数を定義します (可変レート シェーディングまたは VRS の場合)。
- ID3D12Device6 インターフェイスとそのメソッド。 ドライバーのバックグラウンド処理の最適化のモードを設定するために使用します。 「バックグラウンド シェーダーの最適化」も参照してください。
- ID3D12DeviceRemovedExtendedData インターフェイスとそのメソッド。 Device Removed Extended Data (DRED) データへのランタイム アクセスを提供します。
- ID3D12DeviceRemovedExtendedDataSettings インターフェイスとそのメソッド。 コントロール デバイスの拡張データ (DRED) 設定が削除されました。
- D3D12GraphicsCommandList5 インターフェイスとそのメソッド。 可変レート シェーディング (VRS) のサポート。
D3D_SHADER_MODEL列挙体は、D3D_SHADER_MODEL_6_5定数 (試験段階レベルの機能) を追加して更新されました。
D3D12_COMMAND_LIST_TYPE列挙が更新され、D3D12_COMMAND_LIST_TYPE_VIDEO_ENCODE定数が追加されました。
D3D12_FEATURE列挙体は、D3D12_FEATURE_D3D12_OPTIONS6とD3D12_FEATURE_QUERY_META_COMMAND定数を追加して更新されました。
D3D12_RESOURCE_STATES列挙が更新され、D3D12_RESOURCE_STATE_SHADING_RATE_SOURCE定数が追加されました。
Windows 10 Version 1809
これらの機能と API は、Windows 10 Version 1809 (10.0;ビルド 17763)—Windows 10 October 2018 Updateとも呼ばれます。
- HLSL シェーダー モデル 6.3 を使用するレイトレーシングをDirect3D 12します。
- Direct3D 12 レンダー パス
- ID3D12Device5 インターフェイスとそのメソッド。
Windows 10 バージョン 1803
これらの機能と API は、Windows 10 バージョン 1803 (10.0;ビルド 17134)—2018 年 4 月の更新プログラムWindows 10とも呼ばれます。
- ID3D12Device4 インターフェイスとそのメソッド。
Windows 10 バージョン 1709
Windows 10 バージョン 1709 の Direct3D ドキュメントに次のトピックが追加されました。
- ID3D12Fence1 により、フェンスを作成するために渡されるフラグの取得がサポートされ、フェンス作成の機能が拡張されます。
- ID3D12GraphicsCommandList2 により、バッファーへの即時値の直接書き込みがサポートされ、使用可能なグラフィックス コマンドの一覧が拡張されます。
- ID3D12Device3 により、GPU 障害またはデバイス削除のシナリオ時でも存続する特別な目的の診断ヒープがシステム メモリ内に作成されることで、仮想アダプターの機能が拡張されます。
D3D_SHADER_MODEL列挙には、シェーダー モデル 6.1 を記述するために新しいD3D_SHADER_MODEL_6_1値が追加されています。
D3D12_FEATURE列挙には、新しいD3D12_FEATURE_D3D12_OPTIONS3とD3D12_FEATURE_EXISTING_HEAPS値もあります。 名前から分かるように、これらの値により、既存のヒープのサポートの確認に加えて、追加の Direct3D12 オプションも確認できます。
Windows 10 Version 1703
Windows 10 バージョン 1703 の Direct3D ドキュメントに次のトピックが追加されました。
- ID3D12Device2::CreatePipelineState メソッドと D3D12_Pipeline_State_Stream_Desc 構造体は、PSO を作成するための新しく堅牢な方法を表し、グラフィックスとコンピューティング パイプラインを作成するためのインターフェイスを統合します。
- ID3D12Device1::CreatePipelineLibrary1 メソッドは、パイプライン ライブラリ インターフェイスを拡張して、新しい統合D3D12_Pipeline_State_Stream_Desc構造で作成された PSU を受け入れます。
- D3D12EnableExperimentalFeatures 関数により、開発者は、開発者モードのコンピューターを使用して、開発中の特定の機能をテストできます。
- 次の 5 つの新しいインターフェイスがあります (「インターフェイス階層」を参照してください)。
- マルチスレッド ピクセルおよび計算シェーダーのウェーブ固有の操作について説明している、「HLSL シェーダー モデル 6.0 の概要」を参照してください。
- ID3D12Device::SetStablePowerState の使用方法が変更されました。
- Direct3D 11 の一部の新機能については、「Direct3D 11.4 の機能」で説明されています。
- AtomicCopyBufferUINT および AtomicCopyBufferUINT64 によって、認識される遅延を削減するために、遅延ラッチを使用できます。
- ID3D12Device2::CreatePipelineState および OMSetDepthBounds によって、サポートされているハードウェアで深度境界のテストを行うことができます。
- ResolveSubresourceRegion によって、パフォーマンスの最適化を支援するために、サブリソースの部分解決を行うことができます。
- SetSamplePositions により、サポートされているハードウェアでプログラム可能なサンプル位置を使用できます。
2016 年 11 月のドキュメントの更新
- ID3D12GraphicsCommandList::DiscardResource の注釈の改訂。
- "共通状態への降格" の分類 (「リソース バリアを使用して、Direct3D 12 のリソースの状態を同期する」を参照してください)。
- 「D3D12 のヘルパー構造体と関数」で説明されている D3dx12.h ヘッダー ファイルを D3D12 ヘルパー ライブラリから直接ダウンロードできます。
2016 年 8 月のドキュメントの更新 2
「D3D12 デバッグ レイヤーとは」というタイトルの新しいガイド セクション。
3 つの新しいデバッグ レイヤー インターフェイス (プレビュー モード) について説明します。 ID3D12Debug1、 ID3D12DebugCommandList1、 ID3D12DebugDevice1。
2016 年 8 月のドキュメントの更新 1
Windows 10 Version 1607
Windows 10 バージョン 1607 の Direct3D ドキュメントに次のトピックが追加されました。
- ルート署名バージョン 1.1: 更新されたルート署名の概要。これにより、静的または揮発性記述子とデータの設定をアプリで指定でき、グラフィックス ドライバーの最適化を支援できます。
- ID3D12Device1::CreatePipelineLibrary メソッドでは、パイプライン ライブラリを作成することの利点が説明されています。
- 次の 3 つの新しいインターフェイスがあります (「インターフェイス階層」を参照してください)。
- マルチスレッド ピクセルおよび計算シェーダーのウェーブ固有の操作について説明している、「HLSL シェーダー モデル 6.0 の概要」を参照してください。
- ID3D12Device::SetStablePowerState の使用方法が変更されました。
- Direct3D 11 の一部の新機能については、「Direct3D 11.4 の機能」で説明されています。
- Direct3D 12 のサポートされるライブラリの範囲が更新されました。「Direct3D 12 プログラミング環境のセットアップ」の「サポートされるツールとライブラリ」セクションを参照してください。
- ハイ ダイナミック レンジ ディスプレイと高度な色での DirectX の使用
- 変数のリフレッシュ レートの表示
- DXGI 1.5 の機能強化