PFND3DDDI_CREATEQUERY 콜백 함수(d3dumddi.h)
CreateQuery 함수는 Microsoft Direct3D 런타임이 이후에 처리를 위해 발급하는 쿼리에 대한 드라이버 쪽 리소스를 만듭니다.
구문
PFND3DDDI_CREATEQUERY Pfnd3dddiCreatequery;
HRESULT Pfnd3dddiCreatequery(
HANDLE hDevice,
D3DDDIARG_CREATEQUERY *unnamedParam2
)
{...}
매개 변수
hDevice
디스플레이 디바이스(그래픽 컨텍스트)에 대한 핸들입니다.
unnamedParam2
pData [in, out]
쿼리를 식별하는 D3DDDIARG_CREATEQUERY 구조체에 대한 포인터입니다.
반환 값
CreateQuery 는 다음 값 중 하나를 반환합니다.
반환 코드 | 설명 |
---|---|
S_OK | 쿼리가 성공적으로 생성되었습니다. |
E_OUTOFMEMORY | CreateQuery 가 완료하는 데 필요한 메모리를 할당할 수 없습니다. |
설명
Direct3D 런타임은 쿼리 형식을 사용하여 사용자 모드 표시 드라이버의 CreateQuery 함수를 호출하여 쿼리에 대한 리소스를 만듭니다. 사용자 모드 표시 드라이버는 쿼리 유형에 대해 다음 리소스를 만듭니다.
- D3DDDIQUERYTYPE_EVENT 대한 BOOL입니다. 이벤트에 대해 응답하기 전에 드라이버는 GPU(그래픽 처리 장치)가 이벤트와 관련된 모든 작업 처리를 완료하는지 확인해야 합니다. 즉, 드라이버가 문제 종료 상태가 발생한 후 이벤트에 대해 응답합니다. 드라이버는 응답할 때 항상 이벤트의 BOOL 값을 TRUE 로 설정해야 합니다.
- UINT for D3DDDIQUERYTYPE_OCCLUSION. 드라이버는 이 UINT 변수를 문제 쿼리의 시작 상태와 끝 상태 사이의 모든 기본 요소에 대해 z-test가 통과한 픽셀 수로 설정합니다. 깊이 버퍼가 다중 샘플링된 경우 드라이버는 샘플 수에서 픽셀 수를 결정합니다. 그러나 디스플레이 디바이스가 각 다중 샘플에 대해 z 테스트 정확도를 사용할 수 있는 경우 일반적으로 픽셀 수로 변환해야 합니다. 그런 다음 애플리케이션은 폐색 결과를 0에 대해 검사 효과적으로 "완전히 폐색됨"을 의미할 수 있습니다. 다중 샘플링된 수량을 픽셀 수량으로 변환하는 드라이버는 렌더링 대상 다중 샘플링 변경 내용을 검색하고 쿼리 결과를 적절하게 계속 계산해야 합니다.
- D3DDDIQUERYTYPE_VCACHE 대한 D3DDDIDEVINFO_VCACHE 구조체입니다. 드라이버가 문제 종료 상태가 발생한 후 응답합니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows Vista 이상 버전의 Windows 운영 체제에서 사용할 수 있습니다. |
대상 플랫폼 | 데스크톱 |
머리글 | d3dumddi.h(D3dumddi.h 포함) |