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 |