Metodo ID3D12Device10::CreateReservedResource2 (d3d12.h)
Crea una risorsa riservata e non ancora mappata ad alcuna pagina in un heap.
Richiede DirectX 12 Agility SDK 1.7 o versione successiva.
Sintassi
HRESULT CreateReservedResource2(
const D3D12_RESOURCE_DESC *pDesc,
D3D12_BARRIER_LAYOUT InitialLayout,
const D3D12_CLEAR_VALUE *pOptimizedClearValue,
ID3D12ProtectedResourceSession *pProtectedSession,
UINT32 NumCastableFormats,
const DXGI_FORMAT *pCastableFormats,
[in] REFIID riid,
void **ppvResource
);
Parametri
pDesc
Tipo: const D3D12_RESOURCE_DESC*
Puntatore a una struttura D3D12_RESOURCE_DESC che descrive la risorsa.
InitialLayout
Layout iniziale della risorsa trama; D3D12_BARRIER_LAYOUT::D 3D12_BARRIER_LAYOUT_UNDEFINED per i buffer.
pOptimizedClearValue
Tipo: D3D12_CLEAR_VALUE* const
Specifica una struttura D3D12_CLEAR_VALUE che descrive il valore predefinito per un colore chiaro.
pOptimizedClearValue specifica un valore per cui le operazioni non crittografate sono ottimali. Quando la risorsa creata è una trama con i flag D3D12_RESOURCE_FLAG_ALLOW_RENDER_TARGET o D3D12_RESOURCE_FLAG_ALLOW_DEPTH_STENCIL, è necessario scegliere il valore con cui verrà chiamata l'operazione chiara. È possibile chiamare l'operazione di cancellazione con altri valori, ma queste operazioni non saranno efficienti come quando il valore corrisponde a quello passato alla creazione di risorse.
Quando si usa D3D12_RESOURCE_DIMENSION_BUFFER, è necessario impostare pOptimizedClearValue su nullptr
.
pProtectedSession
Tipo: ID3D12ProtectedResourceSession*
Puntatore facoltativo a un oggetto che rappresenta una sessione per la protezione del contenuto. Se specificato, questa sessione indica che la risorsa deve essere protetta. È possibile ottenere un ID3D12ProtectedResourceSession chiamando ID3D12Device4::CreateProtectedResourceSession.
NumCastableFormats
Numero di elementi in pCastableFormats.
pCastableFormats
Matrice contigua di strutture DXGI_FORMAT a cui è possibile eseguire il cast di questa risorsa.
[in] riid
Tipo: REFIID
Riferimento all'identificatore univoco globale (GUID) dell'interfaccia della risorsa da restituire in ppvResource. Vedere osservazioni.
Anche se
ppvResource
Tipo: void**
Puntatore facoltativo a un blocco di memoria che riceve il puntatore di interfaccia richiesto all'oggetto risorsa creato.
ppvResource può essere nullptr
, per abilitare i test delle funzionalità. Quando ppvResource viene nullptr
, non viene creato alcun oggetto e S_FALSE viene restituito quando pDesc è valido.
Valore restituito
Se la funzione ha esito positivo, restituisce S_OK. In caso contrario, restituisce un codice di errore
Valore restituito | Descrizione |
---|---|
E_OUTOFMEMORY | Memoria insufficiente per creare la risorsa. |
Vedere codici restituiti Direct3D 12 per altri possibili valori restituiti.
Osservazioni
Vedere osservazioni per ID3D12Device.CreateReservedResource.
Fabbisogno
Requisito | Valore |
---|---|
piattaforma di destinazione | Finestre |
intestazione |
d3d12.h |
libreria |
D3d12.lib |
dll | D3d12.dll |