다음을 통해 공유


IDirect3DDevice9::D rawTriPatch 메서드(d3d9.h)

현재 설정된 스트림을 사용하여 삼각형 패치를 그립니다.

구문

HRESULT DrawTriPatch(
  [in] UINT                   Handle,
  [in] const float            *pNumSegs,
  [in] const D3DTRIPATCH_INFO *pTriPatchInfo
);

매개 변수

[in] Handle

형식: UINT

그릴 삼각형 패치에 대한 핸들입니다.

[in] pNumSegs

형식: const float*

삼각형 패치의 각 가장자리가 분할될 때 분할되어야 하는 세그먼트 수를 식별하는 세 개의 부동 소수점 값 배열에 대한 포인터입니다. D3DTRIPATCH_INFO 참조하세요.

[in] pTriPatchInfo

형식: const D3DTRIPATCH_INFO*

그릴 삼각형 고차 패치를 설명하는 D3DTRIPATCH_INFO 구조체에 대한 포인터입니다.

반환 값

형식: HRESULT

메서드가 성공하면 반환 값이 D3D_OK. 메서드가 실패하면 반환 값을 D3DERR_INVALIDCALL 수 있습니다.

설명

정적 패치의 경우: 꼭짓점 셰이더를 설정하고, 적절한 스트림을 설정하고, pTriPatchInfo 매개 변수에 패치 정보를 제공하고, Direct3D가 정보를 캡처하고 캐시할 수 있도록 핸들을 지정합니다. 패치를 효율적으로 그리려면 pTriPatchInfo가 NULL로 설정된 IDirect3DDevice9::D rawTriPatch를 호출합니다. 캐시된 패치를 그릴 때 현재 설정된 스트림은 무시됩니다. pNumSegs에 대한 새 값을 지정하여 캐시된 pNumSegs를 재정의합니다. 캐시된 패치를 렌더링할 때 캡처될 때 설정된 것과 동일한 꼭짓점 셰이더를 설정해야 합니다.

핸들을 사용하여 IDirect3DDevice9::D rawTriPatch를 호출하면 이전 IDirect3DDevice9::D rawRectPatch 호출에 의해 캐시된 것과 동일한 핸들이 무효화됩니다.

동적 패치의 경우 패치 데이터가 패치의 모든 렌더링에 대해 변경되므로 정보를 캐시하는 것이 효율적이지 않습니다. 애플리케이션은 핸들을 0으로 설정하여 이를 Direct3D로 전달할 수 있습니다. 이 경우 Direct3D는 현재 설정된 스트림 및 pNumSegs 값을 사용하여 패치를 그리고 정보를 캐시하지 않습니다. 핸들을 0으로, pTriPatchInfo를 NULL로 동시에 설정하는 것은 유효하지 않습니다.

요구 사항

요구 사항
대상 플랫폼 Windows
헤더 d3d9.h(D3D9.h 포함)
라이브러리 D3D9.lib

추가 정보

IDirect3DDevice9

Higher-Order 기본 형식 사용(Direct3D 9)