Compartilhar via


Método IHolographicCameraInterop::AcquireDirect3D12BufferResource (windows.graphics.holographic.interop.h)

O método AcquireDirect3D12BufferResource faz a transição da propriedade de um recurso de buffer de back do Direct3D 12 da plataforma para o aplicativo. Se seu aplicativo já tiver o controle do recurso, a aquisição ainda será considerada um sucesso.

Depois de confirmar um recurso para um HolographicFrame chamando IHolographicQuadLayerUpdateParametersInterop::CommitDirect3D12Resource, seu aplicativo deve considerar o controle desse recurso como propriedade do sistema até que o recurso seja requisitar pelo aplicativo usando esse método. O sistema possui o buffer até que o quadro no qual o buffer foi confirmado passe pela fila de apresentação. Para determinar se o sistema abriu mão do controle do buffer, chame AcquireDirect3D12BufferResource ou AcquireDirect3D12BufferResourceWithTimeout. Se o buffer não puder ser adquirido quando o aplicativo estiver pronto para iniciar a renderização de um novo HolographicFrame, você deverá criar um novo recurso e adicioná-lo à fila de buffers ou limitar o tamanho da fila aguardando que um buffer fique disponível.

Se o buffer não estiver pronto para ser adquirido quando AcquireDirect3D12BufferResource for chamado, a chamada de método falhará e retornará imediatamente o código de erro E_NOTREADY.

Seu aplicativo pode limitar o tamanho da fila chamando AcquireDirect3D12BufferResourceWithTimeout para aguardar até que um recurso fique disponível antes de enfileirar mais trabalho.

Sintaxe

HRESULT AcquireDirect3D12BufferResource(
  ID3D12Resource     *pResourceToAcquire,
  ID3D12CommandQueue *pCommandQueue
);

Parâmetros

pResourceToAcquire

Tipo: ID3D12Resource*

O recurso Direct3D 12 a ser adquirido.

pCommandQueue

Tipo: ID3D12CommandQueue*

A fila de comandos do Direct3D 12 a ser usada para fazer a transição do estado desse recurso ao adquiri-lo para seu aplicativo. O recurso estará no estado D3D12_RESOURCE_STATE_COMMON quando for adquirido. O comando de transição de recurso poderá não ser enfileirado se o recurso já estiver no estado comum quando ele estiver sendo adquirido.

Valor retornado

S_OK se tiver êxito, caso contrário, retornará um código de erro HRESULT indicando o motivo da falha. Consulte também códigos de erro COM (interface do usuário, áudio, DirectX, Codec).

Requisitos

   
Cliente mínimo com suporte Windows 10, versão 2004 (10.0; Build 19041)
Servidor mínimo com suporte Windows Server, versão 2004 (10.0; Build 19041)
Cabeçalho windows.graphics.holographic.interop.h