Share via


ID3D12GraphicsCommandList::ResolveSubresource 메서드(d3d12.h)

다중 샘플링된 리소스를 다중 샘플링이 아닌 리소스에 복사합니다.

구문

void ResolveSubresource(
  ID3D12Resource *pDstResource,
  UINT           DstSubresource,
  ID3D12Resource *pSrcResource,
  UINT           SrcSubresource,
  DXGI_FORMAT    Format
);

매개 변수

pDstResource

형식: [in] ID3D12Resource*

대상 리소스. D3D12_HEAP_TYPE_DEFAULT 힙에 만들어지고 단일 샘플링되어야 합니다. ID3D12Resource를 참조하세요.

DstSubresource

형식: [in] UINT

대상 하위 리소스를 식별하는 인덱스(0부터 시작)입니다. 부모 리소스가 복잡한 경우 D3D12CalcSubresource 를 사용하여 하위 리소스 인덱스 계산

pSrcResource

형식: [in] ID3D12Resource*

원본 리소스. 다중 샘플링되어야 합니다.

SrcSubresource

형식: [in] UINT

원본 리소스의 원본 하위 리소스입니다.

Format

형식: [in] DXGI_FORMAT

다중 샘플링된 리소스를 단일 샘플링된 리소스로 확인하는 방법을 나타내는 DXGI_FORMAT . 설명을 참조하세요.

반환 값

없음

설명

디버그 계층

원본 뷰에서 참조하는 하위 리소스가 D3D12_RESOURCE_STATE_RESOLVE_SOURCE 상태가 아닌 경우 디버그 계층에서 오류가 발생합니다.

대상 버퍼가 D3D12_RESOURCE_STATE_RESOLVE_DEST 상태가 아닌 경우 디버그 계층에서 오류가 발생합니다.

원본 및 대상 리소스는 동일한 리소스 유형이어야 하며 크기가 같아야 합니다. 또한 호환되는 형식이 있어야 합니다. 이에 대한 세 가지 시나리오는 다음과 같습니다.

시나리오 요구 사항
원본 및 대상은 사전 구조화되고 형식화됩니다. 원본과 대상 모두 형식이 동일해야 하며 해당 형식은 Format 매개 변수에 지정해야 합니다.
한 리소스는 사전 구조화되고 형식화되고 다른 하나는 사전 구조화되고 형식이 없습니다. 형식화된 리소스에는 형식이 없는 리소스와 호환되는 형식이 있어야 합니다(예: 형식화된 리소스가 DXGI_FORMAT_R32_FLOAT 형식 없는 리소스가 DXGI_FORMAT_R32_TYPELESS). 형식화된 리소스의 형식은 Format 매개 변수에 지정해야 합니다.
원본 및 대상은 사전 구조화되고 무형식입니다. 원본과 대상의 형식이 같아야 합니다(즉, 둘 다 DXGI_FORMAT_R32_TYPELESS 있어야 합니다). Format 매개 변수는 원본 및 대상과 호환되는 형식을 지정해야 합니다(즉, 둘 다 DXGI_FORMAT_R32_TYPELESS 경우 format 매개 변수에 DXGI_FORMAT_R32_FLOAT 지정할 수 있음). 예를 들어 DXGI_FORMAT_R16G16B16A16_TYPELESS 형식을 지정합니다.
  • 원본(또는 dest) 형식은 DXGI_FORMAT_R16G16B16A16_UNORM 수 있습니다.
  • dest(또는 원본) 형식은 DXGI_FORMAT_R16G16B16A16_FLOAT 수 있습니다.

요구 사항

   
대상 플랫폼 Windows
헤더 d3d12.h
라이브러리 D3d12.lib
DLL D3d12.dll

추가 정보

ID3D12GraphicsCommandList

하위 리소스