Metodo IHolographicCameraInterop::AcquireDirect3D12BufferResource (windows.graphics.holographic.interop.h)
Il metodo AcquireDirect3D12BufferResource passa la proprietà di una risorsa di buffer back Direct3D 12 dalla piattaforma all'applicazione. Se l'applicazione possiede già il controllo della risorsa, l'acquisizione viene comunque considerata un successo.
Dopo aver eseguito il commit di una risorsa in un HolographicFrame chiamando IHolographicQuadLayerUpdateParametersInterop::CommitDirect3D12Resource, l'applicazione deve considerare il controllo di tale risorsa come di proprietà del sistema fino a quando la risorsa non viene riacquisata dall'applicazione usando questo metodo. Il sistema è proprietario del buffer fino a quando il frame di cui è stato eseguito il commit nel buffer passa attraverso la coda di presentazione. Per determinare se il sistema ha rilinquished il controllo del buffer, chiamare AcquireDirect3D12BufferResource o AcquireDirect3D12BufferResourceWithTimeout. Se il buffer non può essere acquisito dal momento in cui l'applicazione è pronta per avviare il rendering di un nuovo HolographicFrame, è necessario creare una nuova risorsa e aggiungerla alla coda del buffer oppure limitare le dimensioni della coda attendendo che un buffer diventi disponibile.
Se il buffer non è pronto per essere acquisito quando viene chiamato AcquireDirect3D12BufferResource , la chiamata al metodo avrà esito negativo e restituirà immediatamente il codice di errore E_NOTREADY.
L'applicazione può limitare le dimensioni della coda chiamando AcquireDirect3D12BufferResourceWithTimeout per attendere che una risorsa diventi disponibile prima di accodare più lavoro.
Sintassi
HRESULT AcquireDirect3D12BufferResource(
ID3D12Resource *pResourceToAcquire,
ID3D12CommandQueue *pCommandQueue
);
Parametri
pResourceToAcquire
Tipo: ID3D12Resource*
Risorsa Direct3D 12 da acquisire.
pCommandQueue
Tipo: ID3D12CommandQueue*
Coda dei comandi Direct3D 12 da usare per la transizione dello stato di questa risorsa durante l'acquisizione per l'applicazione. La risorsa sarà nello stato D3D12_RESOURCE_STATE_COMMON quando viene acquisita. È possibile che il comando di transizione della risorsa non venga accodato se la risorsa è già nello stato comune durante l'acquisizione.
Valore restituito
S_OK in caso di esito positivo, in caso contrario restituisce un codice di errore HRESULT che indica il motivo dell'errore. Vedi anche Codici di errore COM (interfaccia utente, audio, DirectX, codec).
Requisiti
Client minimo supportato | Windows 10 versione 2004 (10.0; Build 19041) |
Server minimo supportato | Windows Server, versione 2004 (10.0; Build 19041) |
Intestazione | windows.graphics.holographic.interop.h |