다음을 통해 공유


PFND3D10DDI_SETRENDERTARGETS 콜백 함수(d3d10umddi.h)

SetRenderTargets 콜백 함수는 렌더링 대상 표면을 설정합니다.

구문

PFND3D10DDI_SETRENDERTARGETS Pfnd3d10ddiSetrendertargets;

void Pfnd3d10ddiSetrendertargets(
  [in] D3D10DDI_HDEVICE unnamedParam1,
  [in] const D3D10DDI_HRENDERTARGETVIEW *unnamedParam2,
  [in] UINT NumViews,
  [in] UINT ClearSlots,
  [in] D3D10DDI_HDEPTHSTENCILVIEW unnamedParam5
)
{...}

매개 변수

[in] unnamedParam1

hDevice: 디스플레이 디바이스(그래픽 컨텍스트)에 대한 핸들입니다.

[in] unnamedParam2

phRenderTargetView: 설정할 렌더링 대상 뷰 개체에 대한 핸들 배열입니다. 일부 핸들 값은 NULL일 수 있습니다.

[in] NumViews

: phRenderTargetView 가 지정하는 배열의 요소 수입니다.

[in] ClearSlots

NumViews에서 NULL로 설정하도록 지정한 슬롯 수 이후의 렌더링 대상 슬롯 수입니다. 이 숫자는 이전의 렌더링 대상 뷰 개체 수(즉, 이전에 SetRenderTargets라고 하는 Microsoft Direct3D 런타임)와 새 렌더링 대상 뷰 개체 수 간의 차이를 나타냅니다.

ClearTargets가 지정하는 숫자는 사용자 모드 표시 드라이버가 이 숫자를 계산할 수 있기 때문에 최적화에만 도움이 됩니다.

[in] unnamedParam5

hDepthStencilView: 깊이 스텐실 뷰에 대한 핸들입니다.

반환 값

없음

설명

드라이버는 pfnSetErrorCb 콜백 함수를 사용하여 오류 코드를 설정할 수 있습니다.

사용자 모드 디스플레이 드라이버는 모든 렌더링 대상 표면과 깊이 스텐실 버퍼를 원자성으로 하나의 작업으로 설정해야 합니다.

NumViews 매개 변수는 phRenderTargetView 매개 변수가 지정하는 배열의 핸들 수를 지정하지만 배열의 일부 핸들 값은 NULL일 수 있습니다.

NumViews에서 지정하는 수와 허용되는 렌더링 대상 표면의 최대 수 사이의 렌더링 대상 표면 범위는 모든 NULL 또는 언바운드 값을 포함하는 데 필요합니다. ClearTargets 매개 변수가 지정하는 숫자는 드라이버가 현재 원자성 작업에 대해 지워야 하는 바인딩 지점 수를 드라이버에 알릴 수 있습니다.

SetRenderTargets에 대한 이전 호출이 NumViews 매개 변수에서 2 값을 전달하고 SetRenderTargets에 대한 현재 호출이 NumViews에서 4 값을 전달하는 경우 SetRenderTargets에 대한 현재 호출도 ClearTargets 매개 변수에서 0 값을 전달합니다. SetRenderTargets에 대한 다음 연속 호출이 NumViews에서 1 값을 전달하는 경우 연속 호출은 ClearTargets에서 3(4 - 1) 값을 전달합니다.

사용자 모드 쿼리 작업 중에 명확한 대상 값이 요청되면 이 값은 렌더링 대상 표면의 최대 수와 렌더링 대상 값 간의 차이입니다.

D3DDDIERR_DEVICEREMOVED 경우를 제외하고 드라이버에 오류가 발생하지 않아야 합니다. 따라서 드라이버가 pfnSetErrorCb 함수에 대한 호출에서 D3DDDIERR_DEVICEREMOVED 경우를 제외하고 오류를 전달하는 경우 Microsoft Direct3D 런타임은 오류가 중요하다고 결정합니다. 디바이스가 제거된 경우에도 드라이버는 D3DDDIERR_DEVICEREMOVED 반환할 필요가 없습니다. 그러나 디바이스 제거가 SetRenderTargets (일반적으로 발생하지 않아야 함)의 작업을 방해하는 경우 드라이버는 D3DDDIERR_DEVICEREMOVED 반환할 수 있습니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows Vista 이상 버전의 Windows 운영 체제에서 사용할 수 있습니다.
대상 플랫폼 데스크톱
머리글 d3d10umddi.h(D3d10umddi.h 포함)

추가 정보

D3D10DDI_DEVICEFUNCS

pfnSetErrorCb