Condividi tramite


Metodo ID3D12Device4::CreateHeap1 (d3d12.h)

Crea un heap (facoltativamente per una sessione protetta) che può essere usato con le risorse inserite e le risorse riservate. Vedere anche ID3D12Device::CreateHeap.

Sintassi

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

Parametri

[in] pDesc

Tipo: const D3D12_HEAP_DESC*

Puntatore a una struttura D3D12_HEAP_DESC costante che descrive l'heap.

[in, optional] pProtectedSession

Tipo: ID3D12ProtectedResourceSession*

Puntatore facoltativo a un oggetto che rappresenta una sessione per la protezione del contenuto. Se specificato, questa sessione indica che l'heap deve essere protetto. È possibile ottenere un ID3D12ProtectedResourceSession chiamando ID3D12Device4::CreateProtectedResourceSession.

Non è possibile creare un heap con una sessione protetta con il flag D3D12_HEAP_FLAG_SHARED_CROSS_ADAPTER.

[in] riid

Tipo: REFIID

Riferimento all'identificatore univoco globale (GUID) dell'interfaccia heap da restituire in ppvHeap.

Anche se riidResource è in genere il GUID di ID3D12Heap, può essere il GUID di qualsiasi interfaccia. Se l'oggetto risorsa non supporta l'interfaccia per questo GUID , la creazione non riesce con E_NOINTERFACE.

[out, optional] ppvHeap

Tipo: void**

Puntatore facoltativo a un blocco di memoria che riceve il puntatore di interfaccia richiesto all'oggetto heap creato.

ppvHeap può essere nullptr, per abilitare i test delle funzionalità. Quando ppvHeap viene nullptr, non viene creato alcun oggetto e S_FALSE viene restituito quando pDesc è valido.

Valore restituito

Tipo: HRESULT

Se la funzione ha esito positivo, restituisce S_OK. In caso contrario, restituisce un codice di erroreHRESULT .

Valore restituito Descrizione
E_OUTOFMEMORY Memoria insufficiente per creare l'heap.

Vedere codici restituiti Direct3D 12 per altri possibili valori restituiti.

Osservazioni

CreateHeap1 crea un heap che può essere usato con risorse inserite e risorse riservate.

Prima di rilasciare il riferimento finale nell'heap, l'applicazione deve assicurarsi che la GPU non leggerà o scriverà più in questo heap.

Un oggetto risorsa posizionato contiene un riferimento sull'heap in cui viene creato; ma una risorsa riservata non contiene un riferimento per ogni mapping creato a un heap.

Fabbisogno

Requisito Valore
client minimo supportato Windows 10 Build 20348
server minimo supportato Windows 10 Build 20348
piattaforma di destinazione Finestre
intestazione d3d12.h
libreria d3d12.lib
dll d3d12.dll