D3DHAL_DP2CLEAR 구조체(d3dhal.h)
D3DHAL_DP2CLEAR 드라이버가 렌더링 대상, 깊이 버퍼 또는 스텐실 버퍼에서 하드웨어 지원 지우기를 수행하는 데 필요한 모든 정보를 포함합니다.
구문
typedef struct _D3DHAL_DP2CLEAR {
DWORD dwFlags;
DWORD dwFillColor;
D3DVALUE dvFillDepth;
DWORD dwFillStencil;
RECT Rects[1];
} D3DHAL_DP2CLEAR;
멤버
dwFlags
드라이버에서 지워야 하는 버퍼를 지정합니다. 이 멤버는 다음 값 중 비트 OR일 수 있습니다.
값 | 의미 |
---|---|
D3DCLEAR_TARGET | 드라이버는 컨텍스트의 렌더링 대상을 dwFillColor 멤버가 지정한 색으로 지워야 합니다. |
D3DCLEAR_STENCIL | 드라이버는 컨텍스트의 스텐실 버퍼를 dwFillStencil 멤버가 지정한 값으로 지워야 합니다. |
D3DCLEAR_ZBUFFER | 드라이버는 컨텍스트의 깊이 버퍼를 dwFillDepth 멤버가 지정한 깊이로 지워야 합니다. |
D3DCLEAR_COMPUTERECTS | DirectX 8.0 이상 버전만 해당합니다. 이 플래그를 설정하면 지정된 사각형이 현재 뷰포트에 대해 잘려야 합니다. 또한 D3DCLEAR_COMPUTERECTS 지정할 때 지울 사각형 수는 0일 수 있습니다(지울 사각형 수는 clear에 대한 D3DHAL_DP2COMMAND 구조체의 wStateCount/wPrimtiveCount 공용 구조체에서 찾을 수 있음). 이 경우 전체 뷰포트를 지워야 합니다. |
dwFillColor
드라이버가 컨텍스트의 렌더링 대상을 지워야 하는 색을 지정합니다.
dvFillDepth
드라이버가 컨텍스트의 깊이 버퍼에서 깊이를 설정하는 데 사용해야 하는 값을 지정합니다. 이 멤버는 간격 0.0에서 1.0까지의 값일 수 있습니다. 드라이버는 깊이 버퍼의 DDPIXELFORMAT 구조체의 dwZBitMask 멤버를 사용하여 이 값을 정수로 변환해야 합니다.
dwFillStencil
드라이버가 컨텍스트의 스텐실 버퍼를 지워야 하는 값을 지정합니다. 이 멤버는 간격 0에서 2-1까지의 정수일 수 있습니다. 여기서 n 은 스텐실 버퍼의 비트 수입니다.
Rects[1]
드라이버가 지워야 하는 버퍼의 사각형 영역을 지정합니다. 사각형은 화면 좌표로 지정됩니다. 구조체의 이 멤버는 Blitted할 첫 번째 사각형 영역을 포함합니다. D3DHAL_DP2COMMANDwStateCount 멤버에는 Blitted할 총 사각형 영역 수가 포함됩니다. 필요한 다른 (wStateCount-1) RECT 구조체는 패딩 없이 D3DHAL_DP2CLEAR 구조를 따릅니다.
설명
이 구조체는 D3DDP2OP_CLEAR 명령 토큰과 함께 레거시 D3dClear 및 D3dClear2 콜백 을 대체하는 데 사용됩니다.
사각형 수가 0이면 D3DHAL_DP2CLEAR 데이터 구조에는 여전히 단일 RECT에 대한 공간이 포함됩니다. 따라서 다음 DP2 명령으로 넘어가는 경우 이 단일 RECT의 크기를 포함해야 합니다. 그러나 이 경우 RECT의 콘텐츠는 정의되지 않으며 드라이버가 읽는 것을 시도해서는 안 됩니다.
표시 드라이버는 ARGB 및 YUV 색 형식 클래스의 입력 색 값을 변환해야 합니다. 명확한 작업의 경우 입력 색 값은 dwFillColor 멤버에 지정됩니다. 자세한 내용은 픽셀 형식에 대한 색 값 처리를 참조하세요.
요구 사항
요구 사항 | 값 |
---|---|
헤더 | d3dhal.h(D3dhal.h 포함) |
추가 정보
D3DDP2OP_CLEAR