IHolographicQuadLayerInterop::AcquireDirect3D12BufferResource 메서드(windows.graphics.holographic.interop.h)
AcquireDirect3D12BufferResource 메서드는 Direct3D 12 콘텐츠 버퍼 리소스의 소유권을 플랫폼에서 애플리케이션으로 전환합니다. 애플리케이션이 이미 리소스의 제어권을 소유하고 있는 경우 인수는 여전히 성공으로 간주됩니다.
IHolographicQuadLayerUpdateParametersInterop::CommitDirect3D12Resource를 호출하여 HolographicFrame에 리소스를 커밋한 후 애플리케이션은 AcquireDirect3D12BufferResource를 사용하여 애플리케이션에서 다시 획득할 때까지 해당 리소스의 제어를 시스템에 포기해야 합니다. 시스템은 쿼드 계층을 표시하는 데 더 이상 필요하지 않을 때까지 버퍼를 소유합니다. 시스템에서 버퍼 제어를 포기했는지 여부를 확인하려면 AcquireDirect3D12BufferResource 또는 AcquireDirect3D12BufferResourceWithTimeout을 호출합니다. 애플리케이션이 쿼드 계층에 대한 새 업데이트 렌더링을 시작할 준비가 되었을 때 버퍼를 가져올 수 없는 경우 새 리소스를 만들고 버퍼 큐에 추가하거나 버퍼를 사용할 수 있을 때까지 대기하여 큐 크기를 제한해야 합니다.
이 메서드를 호출할 때 버퍼를 가져올 준비가 되지 않은 경우 메서드 호출이 실패하고 오류 코드 E_NOTREADY 즉시 반환합니다.
애플리케이션은 AcquireDirect3D12BufferResourceWithTimeout 을 호출하여 더 많은 작업을 큐에 대기하기 전에 리소스를 사용할 수 있게 될 때까지 대기하여 큐 크기를 제한할 수 있습니다.
구문
HRESULT AcquireDirect3D12BufferResource(
ID3D12Resource *pResourceToAcquire,
ID3D12CommandQueue *pCommandQueue
);
매개 변수
pResourceToAcquire
형식: ID3D12Resource*
획득할 Direct3D 12 리소스입니다. 리소스를 획득하면 리소스가 D3D12_RESOURCE_STATE_COMMON 상태가 됩니다.
pCommandQueue
형식: ID3D12CommandQueue*
애플리케이션에 대해 리소스를 가져올 때 이 리소스의 상태를 전환하는 데 사용할 Direct3D 12 명령 큐입니다.
반환 값
S_OK 성공하면 실패 이유를 나타내는 HRESULT 오류 코드를 반환합니다. 또한 COM 오류 코드(UI, 오디오, DirectX, 코덱)를 참조하세요.
요구 사항
지원되는 최소 클라이언트 | Windows 10 버전 2004(10.0; 빌드 19041) |
지원되는 최소 서버 | Windows Server 버전 2004(10.0; 빌드 19041) |
머리글 | windows.graphics.holographic.interop.h |