Share via


D3D11_QUERY 열거형(d3d11.h)

쿼리 형식입니다.

Syntax

typedef enum D3D11_QUERY {
  D3D11_QUERY_EVENT = 0,
  D3D11_QUERY_OCCLUSION,
  D3D11_QUERY_TIMESTAMP,
  D3D11_QUERY_TIMESTAMP_DISJOINT,
  D3D11_QUERY_PIPELINE_STATISTICS,
  D3D11_QUERY_OCCLUSION_PREDICATE,
  D3D11_QUERY_SO_STATISTICS,
  D3D11_QUERY_SO_OVERFLOW_PREDICATE,
  D3D11_QUERY_SO_STATISTICS_STREAM0,
  D3D11_QUERY_SO_OVERFLOW_PREDICATE_STREAM0,
  D3D11_QUERY_SO_STATISTICS_STREAM1,
  D3D11_QUERY_SO_OVERFLOW_PREDICATE_STREAM1,
  D3D11_QUERY_SO_STATISTICS_STREAM2,
  D3D11_QUERY_SO_OVERFLOW_PREDICATE_STREAM2,
  D3D11_QUERY_SO_STATISTICS_STREAM3,
  D3D11_QUERY_SO_OVERFLOW_PREDICATE_STREAM3
} ;

상수

 
D3D11_QUERY_EVENT
값: 0
GPU가 명령 처리를 완료했는지 여부를 결정합니다. GPU가 처리가 완료되면 ID3D11DeviceContext::GetData 는 S_OK 반환하고 pData는 값이 TRUE인 BOOL을 가리킵니다. 이 유형의 쿼리를 사용하는 경우 ID3D11DeviceContext::Begin 을 사용할 수 없습니다.
D3D11_QUERY_OCCLUSION
ID3D11DeviceContext::Begin 및 ID3D11DeviceContext::End 사이에 깊이 및 스텐실 테스트를 통과 샘플 수를 가져옵니다. ID3D11DeviceContext::GetData 는 UINT64를 반환합니다. 깊이 또는 스텐실 테스트를 사용하지 않도록 설정하면 각 테스트가 통과로 계산됩니다.
D3D11_QUERY_TIMESTAMP
ID3D11DeviceContext::GetData가 UINT64를 반환하는 타임스탬프 값을 가져옵니다. 이러한 종류의 쿼리는 두 개의 타임스탬프 쿼리가 D3D11_QUERY_TIMESTAMP_DISJOINT 쿼리 중간에 수행되는 경우에만 유용합니다. 두 개의 타임스탬프의 차이는 경과된 틱 수를 결정하는 데 사용할 수 있으며, D3D11_QUERY_TIMESTAMP_DISJOINT 쿼리는 해당 차이가 신뢰할 수 있는 값인지 확인하고 틱 수를 초로 변환하는 방법을 보여 주는 값도 갖습니다. D3D11_QUERY_DATA_TIMESTAMP_DISJOINT 참조하세요. 이 유형의 쿼리를 사용하는 경우 ID3D11DeviceContext::Begin 을 사용할 수 없습니다.
D3D11_QUERY_TIMESTAMP_DISJOINT
D3D11_QUERY_TIMESTAMP 신뢰할 수 있는 값을 반환하는지 여부를 확인하고 프로세서의 빈도를 제공하여 경과된 틱 수를 초로 변환할 수 있습니다. ID3D11DeviceContext::GetDataD3D11_QUERY_DATA_TIMESTAMP_DISJOINT 반환합니다. 이 유형의 쿼리는 프레임당 한 번만 호출해야 합니다.
D3D11_QUERY_PIPELINE_STATISTICS
ID3D11DeviceContext::Begin 및 ID3D11DeviceContext::End 사이의 픽셀 셰이더 호출 수와 같은 파이프라인 통계 가져옵니다. ID3D11DeviceContext::GetDataD3D11_QUERY_DATA_PIPELINE_STATISTICS 반환합니다.
D3D11_QUERY_OCCLUSION_PREDICATE
ID3D11DeviceContext::GetData를 제외한 D3D11_QUERY_OCCLUSION 마찬가지로 샘플이 깊이 및 스텐실 테스트를 통과했는지 여부를 나타내는 BOOL을 반환합니다. TRUE는 통과된 샘플이 하나 이상 통과되었음을 의미하며, FALSE는 통과되지 않았음을 의미합니다.
D3D11_QUERY_SO_STATISTICS
ID3D11DeviceContext::Begin 및 ID3D11DeviceContext::End 사이에 스트리밍된 기본 형식 수와 같은 스트리밍 출력 통계 가져옵니다. ID3D11DeviceContext::GetDataD3D11_QUERY_DATA_SO_STATISTICS 구조를 반환합니다.
D3D11_QUERY_SO_OVERFLOW_PREDICATE
ID3D11DeviceContext::Begin 및 ID3D11DeviceContext::End 사이에 스트리밍 출력 버퍼가 오버플로되었는지 여부를 결정합니다. ID3D11DeviceContext::GetData 는 BOOL을 반환합니다. TRUE 는 오버플로가 있음을 의미하고 FALSE 는 오버플로가 없음을 의미합니다. 스트리밍 출력이 여러 버퍼에 쓰고 버퍼 중 하나가 오버플로되는 경우 모든 출력 버퍼에 대한 쓰기를 중지합니다. Direct3D에서 오버플로가 감지되면 발생하는 것을 방지합니다. 메모리가 손상되지 않습니다. 이 조건자는 오버플로가 발생할 때 SO_STATISTIC 쿼리가 오버플로를 방지하기 위해 필요한 메모리 양을 애플리케이션에 알 수 있도록 SO_STATISTICS 쿼리와 함께 사용할 수 있습니다.
D3D11_QUERY_SO_STATISTICS_STREAM0
스트림 0에 대한 스트리밍 출력 통계(예: ID3D11DeviceContext::Begin 및 ID3D11DeviceContext::End 사이에 스트리밍된 기본 형식 수)를 가져옵니다. ID3D11DeviceContext::GetDataD3D11_QUERY_DATA_SO_STATISTICS 구조를 반환합니다.
D3D11_QUERY_SO_OVERFLOW_PREDICATE_STREAM0
스트림 0 출력 버퍼가 ID3D11DeviceContext::Begin 및 ID3D11DeviceContext::End 사이에 오버플로되었는지 여부를 결정합니다. ID3D11DeviceContext::GetData 는 BOOL을 반환합니다. TRUE 는 오버플로가 있음을 의미하고 FALSE 는 오버플로가 없음을 의미합니다. 스트리밍 출력이 여러 버퍼에 쓰고 버퍼 중 하나가 오버플로되는 경우 모든 출력 버퍼에 대한 쓰기를 중지합니다. Direct3D에서 오버플로가 감지되면 발생하는 것을 방지합니다. 메모리가 손상되지 않습니다. 이 조건자는 오버플로가 발생할 때 SO_STATISTIC 쿼리가 오버플로를 방지하기 위해 필요한 메모리 양을 애플리케이션에 알 수 있도록 SO_STATISTICS 쿼리와 함께 사용할 수 있습니다.
D3D11_QUERY_SO_STATISTICS_STREAM1
ID3D11DeviceContext::Begin 및 ID3D11DeviceContext::End 사이에 스트리밍된 기본 형식 수와 같은 스트림 1에 대한 스트리밍 출력 통계를 가져옵니다. ID3D11DeviceContext::GetDataD3D11_QUERY_DATA_SO_STATISTICS 구조를 반환합니다.
D3D11_QUERY_SO_OVERFLOW_PREDICATE_STREAM1
ID3D11DeviceContext::Begin 및 ID3D11DeviceContext::End 사이에 스트림 1 출력 버퍼가 오버플로되었는지 여부를 결정합니다. ID3D11DeviceContext::GetData 는 BOOL을 반환합니다. TRUE 는 오버플로가 있음을 의미하고 FALSE 는 오버플로가 없음을 의미합니다. 스트리밍 출력이 여러 버퍼에 쓰고 버퍼 중 하나가 오버플로되는 경우 모든 출력 버퍼에 대한 쓰기를 중지합니다. Direct3D에서 오버플로가 감지되면 발생하는 것을 방지합니다. 메모리가 손상되지 않습니다. 이 조건자는 오버플로가 발생할 때 SO_STATISTIC 쿼리가 오버플로를 방지하기 위해 필요한 메모리 양을 애플리케이션에 알 수 있도록 SO_STATISTICS 쿼리와 함께 사용할 수 있습니다.
D3D11_QUERY_SO_STATISTICS_STREAM2
ID3D11DeviceContext::Begin 및 ID3D11DeviceContext::End 사이에 스트리밍된 기본 형식 수와 같은 스트림 2에 대한 스트리밍 출력 통계 가져옵니다. ID3D11DeviceContext::GetDataD3D11_QUERY_DATA_SO_STATISTICS 구조를 반환합니다.
D3D11_QUERY_SO_OVERFLOW_PREDICATE_STREAM2
스트림 2 출력 버퍼가 ID3D11DeviceContext::Begin 및 ID3D11DeviceContext::End 사이에 오버플로되었는지 여부를 결정합니다. ID3D11DeviceContext::GetData 는 BOOL을 반환합니다. TRUE 는 오버플로가 있음을 의미하고 FALSE 는 오버플로가 없음을 의미합니다. 스트리밍 출력이 여러 버퍼에 쓰고 버퍼 중 하나가 오버플로되는 경우 모든 출력 버퍼에 대한 쓰기를 중지합니다. Direct3D에서 오버플로가 감지되면 발생하는 것을 방지합니다. 메모리가 손상되지 않습니다. 이 조건자는 오버플로가 발생할 때 SO_STATISTIC 쿼리가 오버플로를 방지하기 위해 필요한 메모리 양을 애플리케이션에 알 수 있도록 SO_STATISTICS 쿼리와 함께 사용할 수 있습니다.
D3D11_QUERY_SO_STATISTICS_STREAM3
ID3D11DeviceContext::Begin 및 ID3D11DeviceContext::End 사이에 스트리밍된 기본 형식 수와 같은 스트림 3에 대한 스트리밍 출력 통계를 가져옵니다. ID3D11DeviceContext::GetDataD3D11_QUERY_DATA_SO_STATISTICS 구조를 반환합니다.
D3D11_QUERY_SO_OVERFLOW_PREDICATE_STREAM3
스트림 3 출력 버퍼가 ID3D11DeviceContext::BeginID3D11DeviceContext::End 사이에 오버플로되었는지 여부를 결정합니다. ID3D11DeviceContext::GetData 는 BOOL을 반환합니다. TRUE 는 오버플로가 있음을 의미하고 FALSE 는 오버플로가 없음을 의미합니다. 스트리밍 출력이 여러 버퍼에 쓰고 버퍼 중 하나가 오버플로되는 경우 모든 출력 버퍼에 대한 쓰기를 중지합니다. Direct3D에서 오버플로가 감지되면 발생하는 것을 방지합니다. 메모리가 손상되지 않습니다. 이 조건자는 오버플로가 발생할 때 SO_STATISTIC 쿼리가 오버플로를 방지하기 위해 필요한 메모리 양을 애플리케이션에 알 수 있도록 SO_STATISTICS 쿼리와 함께 사용할 수 있습니다.

설명

ID3D11Device::CreateQuery를 사용하여 쿼리를 만듭니다.

요구 사항

요구 사항
헤더 d3d11.h

추가 정보

핵심 열거형