ID3D11On12Device2::UnwrapUnderlyingResource 메서드(d3d11on12.h)
Direct3D 11 리소스 개체를 래프 해제하고 Direct3D 12 리소스 개체로 검색합니다.
통사론
HRESULT UnwrapUnderlyingResource(
[in] ID3D11Resource *pResource11,
[in] ID3D12CommandQueue *pCommandQueue,
[in] REFIID riid,
[out] void **ppvResource12
);
매개 변수
[in] pResource11
형식: ID3D11Resource*
래프 해제할 Direct3D 11 리소스 개체입니다.
[in] pCommandQueue
형식: ID3D12CommandQueue*
애플리케이션이 리소스를 사용할 계획인 명령 큐입니다. 리소스에 액세스하는 보류 중인 작업으로 인해 펜스 대기가 이 큐에서 예약됩니다. 그런 다음 호출자 소유 펜스의 신호를 포함하여 이 큐에서 추가 작업을 큐에 대기할 수 있습니다.
[in] riid
형식: REFIID
ppvResource12
반환하려는 인터페이스의 GUID(Globally Unique Identifier)에 대한 참조입니다.
[out] ppvResource12
형식: void**
Direct3D 12 리소스에 대한 포인터를 받는 메모리 블록에 대한 포인터입니다.
반환 값
형식: HRESULT
함수가 성공하면 S_OK반환합니다. 그렇지 않으면 HRESULT오류 코드반환합니다.
발언
리소스가
래핑 해제할 수 있는 항목에는 키 지정 뮤텍스 리소스, GDI 호환 리소스 및 버퍼 없음과 같은 몇 가지 제한 사항이 있습니다. 그러나 UnwrapUnderlyingResource 사용하여 ID3D11On12Device::CreateWrappedResource 메서드를 통해 만든 리소스와 ID3D11Device::CreateTexture2D통해 만든 리소스를 래핑 해제할 수 있습니다.
일반적으로 Direct3D 11에서 개체를 다시 사용하기 전에 Direct3D11on12로 반환해야 합니다(ID3D11On12Device2::ReturnUnderlyingResource참조).
unwrapUnderlyingResource
리소스 래핑 해제는 Direct3D11On12 번역 계층에서 리소스를 체크 아웃합니다. 리소스를 체크 아웃하는 동안에는 변환 계층 사용량(API 버전 중 하나를 통해)을 예약할 수 없습니다.
UnwrapUnderlyingResource 플러시되지 않으며 GPU 작업을 예약할 수 있습니다. 외부에서 완료를 기다리는 경우 UnwrapUnderlyingResource 호출한 후 플러시해야 합니다.
요구 사항
요구 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 10 버전 2004(10.0; 빌드 19041) |
지원되는 최소 서버 | Windows Server 버전 2004(10.0; 빌드 19041) |
헤더 | d3d11on12.h |
라이브러리 | D3D11.lib |
DLL | D3D11.dll |