デバイス(D3D12Device)について

デバイス(D3D12Device)について

Deviceを使用することで様々なオブジェクトの生成や定義を行えます。

基本的にD3D12Deviceで作成するものは下記になります。また、実際に使用する場合はインターフェースを介すためID3D12Deviceとなります。

名称 説明
コマンドアロケーター GPUに送る命令を書き込むためのメモリ領域を管理するマネージャー
コマンドリスト 描画や状態を変更するなどの命令を記録するバッファリスト
コマンドキュー コマンドの待ち行列
フェンス CPUとGPUの同期に使用する
リソース シェーダーリソースビュー、レンダーターゲットビュー等
パイプラインステートオブジェクト(PSO) シェーダ、入力レイアウト、各ステート等のGPU実行に必要な固定の設定
ディスクリプタヒープ リソースへのハンドル情報等のGPUメモリ領域。
CPU側、GPU側どちらからも参照可能。
ルートシグネチャ CPU側のリソースと、GPUシェーダー上のレジスタを結びつけるための、
「GPU実行時の引数配置」を定義するデータ構造
サンプラー 「テクスチャをどう読むか」を定義した
固定機能ユニット用の状態オブジェクト
リソースビュー GPUから見たリソースの使い方の定義で、どうアクセスするかのルール

上記のようなものを作成することが可能です。また、これからDirectX12を使用するにあたり非常に重要な項目になるため、ある程度把握しておく必要があります。