次の方法で共有


ID3D12Device::CreateHeap メソッド (d3d12.h)

配置されたリソースと予約済みリソースで使用できるヒープを作成します。

構文

HRESULT CreateHeap(
  [in]            const D3D12_HEAP_DESC *pDesc,
  [in]            REFIID                riid,
  [out, optional] void                  **ppvHeap
);

パラメーター

[in] pDesc

型: const D3D12_HEAP_DESC*

ヒープを記述する定数 D3D12_HEAP_DESC 構造体へのポインター。

[in] riid

種類: REFIID

ppvHeap で返されるヒープ インターフェイスのグローバル一意識別子 (GUID) への参照。

riidResource は最も一般的に ID3D12HeapGUID ですが、任意のインターフェイスの GUID である可能性があります。 リソース オブジェクトがこの GUID のインターフェイスをサポートしていない場合は、 E_NOINTERFACEで作成が失敗します。

[out, optional] ppvHeap

型: void**

作成されたヒープ オブジェクトへの要求されたインターフェイス ポインターを受け取るメモリ ブロックへの省略可能なポインター。

ppvHeap を に設定 nullptrすると、機能テストを有効にすることができます。 ppvHeap が の場合、nullptrオブジェクトは作成されません。pDesc が有効な場合、S_FALSEが返されます。

戻り値

種類: HRESULT

関数が成功した場合は、S_OK を返します。 それ以外の場合は、 HRESULTエラー コードが返されます。

戻り値 説明
E_OUTOFMEMORY ヒープを作成するためのメモリが不足しています。

その他Direct3D 12可能な戻り値については、戻りコードを参照してください。

解説

CreateHeap は 、配置されたリソースと予約済みリソースで使用できるヒープを作成します。

ヒープの最後の参照を解放する前に、アプリケーションで GPU がこのヒープに対する読み取りまたは書き込みを行えなくなることを確認する必要があります。

配置されたリソース オブジェクトは、作成されたヒープ上の参照を保持します。ただし、予約済みリソースには、ヒープに対して行われる各マッピングの参照は保持されません。

要件

   
対象プラットフォーム Windows
ヘッダー d3d12.h
Library D3D12.lib
[DLL] D3D12.dll

関連項目

ID3D12Device

共有ヒープ