ID3D12Device インターフェイス (d3d12.h)
仮想アダプターを表します。これは、コマンド アロケーター、コマンド リスト、コマンド キュー、フェンス、リソース、パイプライン状態オブジェクト、ヒープ、ルート署名、サンプラー、および多くのリソース ビューを作成するために使用されます。
メモこのインターフェイスは、Windows 10で導入されました。 Windows 10を対象とするアプリケーションでは、新しいバージョンではなく、このインターフェイスを使用する必要があります。 新しいバージョンの Windows 10 を対象とするアプリケーションでは、適切なバージョンの ID3D12Device インターフェイスを使用する必要があります。 このインターフェイスの最新バージョンは、Windows 10 Fall Creators Updateで導入された ID3D12Device3 です。
継承
ID3D12Device インターフェイスは ID3D12Object から継承されます。 ID3D12Device には、次の種類のメンバーもあります。
メソッド
ID3D12Device インターフェイスには、これらのメソッドがあります。
ID3D12Device::CheckFeatureSupport 現在のグラフィックス ドライバーでサポートされている機能に関する情報を取得します。 (ID3D12Device.CheckFeatureSupport) |
ID3D12Device::CopyDescriptors ソースから宛先に記述子をコピーします。 (ID3D12Device.CopyDescriptors) |
ID3D12Device::CopyDescriptorsSimple ソースから宛先に記述子をコピーします。 (ID3D12Device.CopyDescriptorsSimple) |
ID3D12Device::CreateCommandAllocator コマンド アロケーター オブジェクトを作成します。 |
ID3D12Device::CreateCommandList コマンド リストを作成します。 |
ID3D12Device::CreateCommandQueue コマンド キューを作成します。 |
ID3D12Device::CreateCommandSignature このメソッドは、コマンド シグネチャを作成します。 |
ID3D12Device::CreateCommittedResource リソース全体を格納するのに十分な大きさのヒープであり、リソースがヒープにマップされるように、リソースと暗黙的なヒープの両方を作成します。 |
ID3D12Device::CreateComputePipelineState コンピューティング パイプライン状態オブジェクトを作成します。 |
ID3D12Device::CreateConstantBufferView リソース データにアクセスするための定数バッファー ビューを作成します。 |
ID3D12Device::CreateDepthStencilView リソース データにアクセスするための深度ステンシル ビューを作成します。 |
ID3D12Device::CreateDescriptorHeap 記述子ヒープ オブジェクトを作成します。 |
ID3D12Device::CreateFence フェンス オブジェクトを作成します。 (ID3D12Device.CreateFence) |
ID3D12Device::CreateGraphicsPipelineState グラフィックス パイプライン状態オブジェクトを作成します。 |
ID3D12Device::CreateHeap 配置されたリソースと予約済みリソースで使用できるヒープを作成します。 |
ID3D12Device::CreatePlacedResource 特定のヒープに配置されるリソースを作成します。 配置されたリソースは、使用可能な最も軽量なリソース オブジェクトであり、作成と破棄が最も高速です。 |
ID3D12Device::CreateQueryHeap クエリ ヒープを作成します。 クエリ ヒープには、クエリの配列が含まれています。 |
ID3D12Device::CreateRenderTargetView リソース データにアクセスするためのレンダー ターゲット ビューを作成します。 (ID3D12Device.CreateRenderTargetView) |
ID3D12Device::CreateReservedResource ヒープ内のページにまだマップされていない予約済みのリソースを作成します。 |
ID3D12Device::CreateRootSignature ルート署名レイアウトを作成します。 |
ID3D12Device::CreateSampler テクスチャのサンプリング情報をカプセル化するサンプラー オブジェクトを作成します。 |
ID3D12Device::CreateShaderResourceView リソース内のデータにアクセスするためのシェーダー リソース ビューを作成します。 (ID3D12Device.CreateShaderResourceView) |
ID3D12Device::CreateSharedHandle ヒープ、リソース、またはフェンス オブジェクトへの共有ハンドルを作成します。 |
ID3D12Device::CreateUnorderedAccessView 順序指定されていないアクセス用のビューを作成します。 |
ID3D12Device::Evict データのページアウトを有効にします。これにより、そのデータの GPU アクセスが除外されます。 |
ID3D12Device::GetAdapterLuid 現在のデバイス (アダプター) のローカル一意識別子を取得します。 |
ID3D12Device::GetCopyableFootprints コピーできるリソース レイアウトを取得します。 アップロード ヒープ内の領域をサブ割り当てするときに、アプリのD3D12_PLACED_SUBRESOURCE_FOOTPRINTとD3D12_SUBRESOURCE_FOOTPRINTに役立ちます。 |
ID3D12Device::GetDescriptorHandleIncrementSize 指定された種類の記述子ヒープのハンドルインクリメントのサイズを取得します。 この値は通常、ハンドルを記述子配列に正しい量だけインクリメントするために使用されます。 |
ID3D12Device::GetDeviceRemovedReason デバイスが削除された理由を取得します。 |
ID3D12Device::GetNodeCount このデバイスに関連付けられている物理アダプター (ノード) の数を報告します。 |
ID3D12Device::GetResourceTiling タイル化されたリソースをタイルに分割する方法に関する情報を取得します。 (ID3D12Device.GetResourceTiling) |
ID3D12Device::MakeResident デバイスにオブジェクトを常駐させます。 |
ID3D12Device::OpenSharedHandle HANDLE と REFIID を使用して、共有リソース、共有ヒープ、共有フェンスのハンドルを開きます。 |
ID3D12Device::OpenSharedHandleByName 名前とアクセスを使用して、共有リソース、共有ヒープ、共有フェンスのハンドルを開きます。 |
ID3D12Device::SetStablePowerState 特定の種類のプロファイリングと実験的なプロトタイプ作成のための開発時の支援。 |
注釈
D3D12CreateDevice を使用してデバイスを作成します。
Windows 10記念日には、ID3D12Device1 を通じていくつかの追加機能を利用できます。
例
D3D1211on12 サンプルでは、次のように ID3D12Device を使用します。
ヘッダー ファイルの宣言。
// Pipeline objects.
D3D12_VIEWPORT m_viewport;
ComPtr<IDXGISwapChain3> m_swapChain;
ComPtr<ID3D12Device> m_device;
ComPtr<ID3D12Resource> m_renderTargets[FrameCount];
ComPtr<ID3D12Resource> m_depthStencil;
ComPtr<ID3D12CommandAllocator> m_commandAllocator;
ComPtr<ID3D12GraphicsCommandList> m_commandList;
ComPtr<ID3D12CommandQueue> m_commandQueue;
ComPtr<ID3D12RootSignature >m_rootSignature;
ComPtr<ID3D12DescriptorHeap> m_rtvHeap;
ComPtr<ID3D12DescriptorHeap> m_cbvSrvHeap;
ComPtr<ID3D12DescriptorHeap> m_dsvHeap;
ComPtr<ID3D12DescriptorHeap> m_samplerHeap;
ComPtr<ID3D12PipelineState> m_pipelineState1;
ComPtr<ID3D12PipelineState> m_pipelineState2;
D3D12_RECT m_scissorRect;
サポートされている機能の確認。
inline UINT8 D3D12GetFormatPlaneCount(
_In_ ID3D12Device* pDevice,
DXGI_FORMAT Format
)
{
D3D12_FEATURE_DATA_FORMAT_INFO formatInfo = {Format};
if (FAILED(pDevice->CheckFeatureSupport(D3D12_FEATURE_FORMAT_INFO, &formatInfo, sizeof(formatInfo))))
{
return 0;
}
return formatInfo.PlaneCount;
}
要件
要件 | 値 |
---|---|
対象プラットフォーム | Windows |
ヘッダー | d3d12.h |