ID3D12Device8::CreatePlacedResource1 メソッド (d3d12.h)
特定のヒープに配置されるリソースを作成します。 配置されたリソースは、使用可能な最も軽量なリソース オブジェクトであり、作成と破棄が最も高速です。
アプリケーションでは、ヒープ領域に配置された複数の Direct3D リソースと予約済みリソースを重ねて、ビデオ メモリを再利用できます。 単純なメモリ再利用モデル (解説で説明) は、どの重複するリソースが任意の時点で有効であるかを明確にするために存在します。 グラフィックス ツールのサポートを最大化するために、単純なモデルのデータ継承はサポートされていません。詳細なタイルとサブリソースの無効化はサポートされていません。 完全に重複するリソースの無効化のみが発生します。
構文
HRESULT CreatePlacedResource1(
ID3D12Heap *pHeap,
UINT64 HeapOffset,
const D3D12_RESOURCE_DESC1 *pDesc,
D3D12_RESOURCE_STATES InitialState,
const D3D12_CLEAR_VALUE *pOptimizedClearValue,
REFIID riid,
void **ppvResource
);
パラメーター
pHeap
型: [in] ID3D12Heap*
リソースが配置されるヒープを表す ID3D12Heap インターフェイスへのポインター。
HeapOffset
型: UINT64
リソースへのオフセット (バイト単位)。
pDesc
型: [in] const D3D12_RESOURCE_DESC1*
ミップ領域を含む、リソースを記述する D3D12_RESOURCE_DESC1 構造体へのポインター。
InitialState
D3D12_RESOURCE_STATES 列挙定数のビットごとの OR の組み合わせとしてのリソースの初期状態。
リソースを
pOptimizedClearValue
型: [in, optional] const D3D12_CLEAR_VALUE*
クリア カラーの既定値を記述する D3D12_CLEAR_VALUE を指定します。
pOptimizedClearValue
クリア操作は他の値で呼び出すことができますが、これらの操作は、リソースの作成に渡された値と一致する場合ほど効率的ではありません。
D3D12_RESOURCE_DIMENSION_BUFFERで使用する場合、pOptimizedClearValue は NULL である必要があります。
riid
型: REFIID
リソース インターフェイスのグローバル一意識別子 (GUID)。 これは入力パラメーターです。
リソースへのインターフェイスの REFIID(GUID) は、__uuidof
マクロを使用して取得できます。 たとえば、__uuidof(ID3D12Resource)
は、インターフェイスの GUID をリソースに取得します。
riid は、最も一般的には、ID3D12Resourceの GUID ですが、任意のインターフェイスの任意の GUID にすることができます。 リソース オブジェクトがこの GUIDのインターフェイスをサポートしていない場合は、E_NOINTERFACEで作成が失敗します。
ppvResource
型: [out, optional] void**
リソースへのポインターを受け取るメモリ ブロックへのポインター。 ppvResource
戻り値
型: HRESULT
このメソッドは、リソースを作成するのに十分なメモリがない場合に E_OUTOFMEMORY を返します。 その他 戻り値については、Direct3D 12 リターン コード を参照してください。
備考
ID3D12Device::CreatePlacedResourceを参照してください。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows 10 ビルド 20348 |
サポートされる最小サーバー | Windows 10 ビルド 20348 |
ヘッダー | d3d12.h |
ライブラリ | d3d12.lib |
DLL | d3d12.dll |
関連項目
CreateCommittedResource の
CreateReservedResource の
共有ヒープ の