次の方法で共有


ID3D12Device4::CreateHeap1 メソッド (d3d12.h)

配置されたリソースと予約済みリソースで使用できるヒープ (必要に応じて保護されたセッション用) を作成します。 ID3D12Device::CreateHeapも参照してください。

構文

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

パラメーター

[in] pDesc

型: const D3D12_HEAP_DESC*

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

[in, optional] pProtectedSession

型: ID3D12ProtectedResourceSession*

コンテンツ保護のセッションを表すオブジェクトへの省略可能なポインター。 指定した場合、このセッションはヒープを保護する必要があることを示します。 ID3D12ProtectedResourceSession を取得するには、ID3D12Device4::CreateProtectedResourceSessionを呼び出します。

D3D12_HEAP_FLAG_SHARED_CROSS_ADAPTER フラグを使用して、保護されたセッションを持つヒープを作成することはできません。

[in] riid

型: REFIID

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

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

[out, optional] ppvHeap

型: void**

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

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

戻り値

型: HRESULT

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

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

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

備考

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

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

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

必要条件

要件 価値
サポートされる最小クライアント Windows 10 ビルド 20348
サポートされる最小サーバー Windows 10 ビルド 20348
ターゲット プラットフォーム の ウィンドウズ
ヘッダー d3d12.h
ライブラリ d3d12.lib
DLL d3d12.dll