共用方式為


ID3D12Device10::CreateCommittedResource3 方法 (d3d12.h)

建立具有初始配置而非初始狀態的認可資源。

需要 DirectX 12 Agility SDK 1.7 或更新版本。

語法

HRESULT CreateCommittedResource3(
  const D3D12_HEAP_PROPERTIES    *pHeapProperties,
  D3D12_HEAP_FLAGS               HeapFlags,
  const D3D12_RESOURCE_DESC1     *pDesc,
  D3D12_BARRIER_LAYOUT           InitialLayout,
  const D3D12_CLEAR_VALUE        *pOptimizedClearValue,
  ID3D12ProtectedResourceSession *pProtectedSession,
  UINT32                         NumCastableFormats,
  const DXGI_FORMAT              *pCastableFormats,
  REFIID                         riidResource,
  void                           **ppvResource
);

參數

pHeapProperties

類型:_In_ const D3D12_HEAP_PROPERTIES*

提供資源堆積屬性之 D3D12_HEAP_PROPERTIES 結構的指標。

HeapFlags

類型:D3D12_HEAP_FLAGS

堆積選項,做為 D3D12_HEAP_FLAGS 列舉常數的位 OR'd 組合。

pDesc

類型:const D3D12_RESOURCE_DESC1*

描述資源之 D3D12_RESOURCE_DESC1 結構的指標,包括 mip 區域。

InitialLayout

紋理資源的初始配置;D3D12_BARRIER_LAYOUT::D 3D12_BARRIER_LAYOUT_UNDEFINED 緩衝區。

pOptimizedClearValue

類型:const D3D12_CLEAR_VALUE*

指定描述純色預設值的 D3D12_CLEAR_VALUE 結構。

pOptimizedClearValue 指定最理想的清除作業值。 當建立的資源是具有 D3D12_RESOURCE_FLAG_ALLOW_RENDER_TARGETD3D12_RESOURCE_FLAG_ALLOW_DEPTH_STENCIL 旗標的紋理時,您應該選擇最常呼叫清除作業的值。 您可以使用其他值呼叫清除作業,但當值符合傳遞至資源建立的值時,這些作業不會那麼有效率。

當您使用 D3D12_RESOURCE_DIMENSION_BUFFER時,必須將 pOptimizedClearValue 設定為 nullptr

pProtectedSession

類型:ID3D12ProtectedResourceSession*

對象的選擇性指標,表示內容保護的會話。 如果提供,則此會話表示應該保護資源。 您可以呼叫 ID3D12Device4::CreateProtectedResourceSession來取得 ID3D12ProtectedResourceSession

NumCastableFormats

pCastableFormats 中的項目數目

pCastableFormats

這個資源可以轉換成的連續 DXGI_FORMAT 結構陣列。

riidResource

類型:REFIID

要傳回 ppvResource中之資源介面之全域唯一標識碼 (GUID) 的參考。

雖然 riidResource 通常是 ID3D12Resource GUID,但它可能是任何介面的 GUID。 如果資源物件不支援此 GUID的介面,則建立會失敗並產生 E_NOINTERFACE

ppvResource

類型:void**

記憶體區塊的選擇性指標,可接收所建立資源物件的要求介面指標。

ppvResource 可以 nullptr,以啟用功能測試。 當 ppvResource 時,不會建立任何物件,而且當 pDesc 有效時,就會傳回 S_FALSE

傳回值

類型:HRESULT

如果函式成功,它會傳回 S_OK。 否則,它會傳回 HRESULT錯誤碼

傳回值 描述
E_OUTOFMEMORY 記憶體不足,無法建立資源。

如需其他可能的傳回值,請參閱 Direct3D 12 傳回碼

要求

要求 價值
目標平臺 窗戶
標頭 d3d12.h
連結庫 D3d12.lib
DLL D3d12.dll

另請參閱

ID3D12Device10