Partager via


Méthode IHolographicQuadLayerInterop::AcquireDirect3D12BufferResource (windows.graphics.holographic.interop.h)

La méthode AcquireDirect3D12BufferResource transfère la propriété d’une ressource de mémoire tampon de contenu Direct3D 12 de la plateforme à votre application. Si votre application possède déjà le contrôle de la ressource, l’acquisition est toujours considérée comme un succès.

Après avoir validé une ressource sur un HolographicFrame en appelant IHolographicQuadLayerUpdateParametersInterop::CommitDirect3D12Resource, votre application doit envisager de renoncer au contrôle de cette ressource au système jusqu’à ce qu’elle soit réacquisie par votre application à l’aide de AcquireDirect3D12BufferResource. Le système est propriétaire de la mémoire tampon jusqu’à ce qu’elle ne soit plus nécessaire pour présenter la couche quad. Pour déterminer si le système a abandonné le contrôle de la mémoire tampon, appelez AcquireDirect3D12BufferResource ou AcquireDirect3D12BufferResourceWithTimeout. Si la mémoire tampon ne peut pas être acquise au moment où votre application est prête à commencer à afficher une nouvelle mise à jour pour la couche quad, vous devez créer une ressource et l’ajouter à la file d’attente de la mémoire tampon, ou limiter la taille de la file d’attente en attendant qu’une mémoire tampon soit disponible.

Si la mémoire tampon n’est pas prête à être acquise lorsque cette méthode est appelée, l’appel de méthode échoue et retourne immédiatement le code d’erreur E_NOTREADY.

Votre application peut limiter la taille de la file d’attente en appelant AcquireDirect3D12BufferResourceWithTimeout pour attendre qu’une ressource soit disponible avant de faire la file d’attente.

Syntaxe

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

Paramètres

pResourceToAcquire

Type : ID3D12Resource*

Ressource Direct3D 12 à acquérir. La ressource sera dans l’état D3D12_RESOURCE_STATE_COMMON lors de son acquisition.

pCommandQueue

Type : ID3D12CommandQueue*

File d’attente de commandes Direct3D 12 à utiliser pour la transition de l’état de cette ressource lors de son acquisition pour votre application.

Valeur retournée

S_OK en cas de réussite, retourne un code d’erreur HRESULT indiquant la raison de l’échec. Consultez également Codes d’erreur COM (interface utilisateur, audio, DirectX, codec).

Configuration requise

   
Client minimal pris en charge Windows 10, version 2004 (10.0; Build 19041)
Serveur minimal pris en charge Windows Server, version 2004 (10.0 ; Build 19041)
En-tête windows.graphics.holographic.interop.h

Voir aussi

AcquireDirect3D12BufferResourceWithTimeout