Skip to main content
建立資源,以及足以容納整個資源的隱含堆積。資源會對應至該堆積。

語法

參數

pHeapProperties _In_
類型:D3D12_HEAP_PROPERTIES*
指向 D3D12_HEAP_PROPERTIES 結構的指標,提供資源堆積的屬性。 HeapFlags
類型:D3D12_HEAP_FLAGS
堆積選項,為 D3D12_HEAP_FLAGS 列舉常數的位元 OR 組合。 pResourceDesc _In_
類型:D3D12XBOX_RESOURCE_DESC*
指向描述資源之 D3D12XBOX_RESOURCE_DESC 結構的指標。 InitialState
類型:D3D12_RESOURCE_STATES
資源的初始狀態,為 D3D12_RESOURCE_STATES 列舉常數的位元 OR 組合。 當資源與 D3D12_HEAP_TYPE_UPLOAD 堆積一起建立時,InitialState 必須為 D3D_RESOURCE_STATE_GENERIC_READ。當資源與 D3D12_HEAP_TYPE_READBACK 堆積一起建立時,InitialState 必須為 D3D12_RESOURCE_STATE_COPY_DEST。 pOptimizedClearValue _In_opt_
類型:D3D12_CLEAR_VALUE*
指定描述清除色彩預設值的 D3D12_CLEAR_VALUE。 riidResource
類型:REFIID
資源介面的全域唯一識別碼 (GUID)。這是輸入參數。若要擷取命令佇列介面的 REFIID (或 GUID),請使用 __uuidof() 巨集。例如,若要取得資源介面的 GUID:
雖然 riidResource 最常是 ID3D12Resource 的 GUID,但它可以是任何介面的任何 GUID。如果資源物件不支援此 GUID 的介面,建立就會失敗並傳回 E_NOINTERFACE。 ppvResource _Outptr_opt_
類型:void**
指向記憶體的指標,該記憶體會接收所建立資源物件的要求介面指標。ppvResource 可以是 null,以啟用功能測試;當呼叫 CreateCommittedResourceX 時將 ppvResource 設定為 null,則不會建立任何物件,且在 pResourceDesc 有效時會傳回 S_FALSE。

傳回值

類型:HRESULT 如果沒有足夠的記憶體可建立資源,則為 E_OUTOFMEMORY。如需其他可能的傳回值,請參閱 Direct3D 12 傳回碼。

備註

此函式會建立資源,以及足以容納整個資源的隱含堆積,並將資源對應至該處。應用程式無法取得所建立的堆積。在釋放資源的最後一個參考之前,應用程式必須確保 GPU 已不再讀取或寫入此資源。 在函式返回應用程式之前,隱含堆積會設為常駐以供 GPU 存取。如需詳細資訊,請參閱常駐。 資源的 GPU VA 對應無法變更。如需詳細資訊,請參閱 UpdateTileMappings 和磁碟區並排資源。 此函式為安全執行緒。

需求

標頭: d3d12_x.h 程式庫: d3d12_x.lib 支援的平台: XBOX One 系列

另請參閱

ID3D12Device
Last modified on October 6, 2026