D3D10_QUERY列挙 (d3d10.h)

クエリの種類。

構文

typedef enum D3D10_QUERY {
  D3D10_QUERY_EVENT = 0,
  D3D10_QUERY_OCCLUSION,
  D3D10_QUERY_TIMESTAMP,
  D3D10_QUERY_TIMESTAMP_DISJOINT,
  D3D10_QUERY_PIPELINE_STATISTICS,
  D3D10_QUERY_OCCLUSION_PREDICATE,
  D3D10_QUERY_SO_STATISTICS,
  D3D10_QUERY_SO_OVERFLOW_PREDICATE
} ;

定数

 
D3D10_QUERY_EVENT
値: 0
GPU がコマンドの処理を終了したかどうかを判断します。 GPU の処理が完了すると、 GetData はS_OKを返し、pData は TRUE の値を持つ BOOL を指します。 この種類のクエリを使用すると、 Begin は無効になります。
D3D10_QUERY_OCCLUSION
Begin と End の間で深度テストとステンシル テストに合格したサンプルの数を取得しますGetData は UINT64 を返します。 深度テストまたはステンシル テストが無効になっている場合、これらの各テストは合格としてカウントされます。
D3D10_QUERY_TIMESTAMP
GetData が UINT64 を返すタイムスタンプ値を取得します。 この種類のクエリは、D3D10_QUERY_TIMESTAMP_DISJOINT クエリの途中で 2 つのタイムスタンプ クエリが実行される場合にのみ役立ちます。 2 つのタイムスタンプの違いを使用して、経過したティックの数を確認できます。D3D10_QUERY_TIMESTAMP_DISJOINT クエリでは、その違いが信頼できる値であるかどうかを判断し、ティック数を秒に変換する方法を示す値も持ちます。 「D3D10_QUERY_DATA_TIMESTAMP_DISJOINT」を参照してください。 この種類のクエリを使用すると、 Begin は無効になります。
D3D10_QUERY_TIMESTAMP_DISJOINT
D3D10_QUERY_TIMESTAMPが信頼できる値を返しているかどうかを判断します。また、経過したティック数を秒に変換できるプロセッサの頻度も指定します。 GetDataD3D10_QUERY_DATA_TIMESTAMP_DISJOINTを返します。 この種類のクエリは、フレームごとに 1 回だけ呼び出す必要があります。
D3D10_QUERY_PIPELINE_STATISTICS
Begin と End の間のピクセル シェーダー呼び出しの数など、パイプラインの統計情報を取得しますGetDataD3D10_QUERY_DATA_PIPELINE_STATISTICSを返します。
D3D10_QUERY_OCCLUSION_PREDICATE
D3D10_QUERY_OCCLUSIONと同様に、 GetData 以外では、サンプルが深度テストとステンシル テストに合格したかどうかを示す BOOL が返されます。 TRUE は、少なくとも 1 つ合格したことを意味し、 FALSE は渡されませんでした。
D3D10_QUERY_SO_STATISTICS
Begin と End の間にストリーミングされたプリミティブの数など、ストリーミング出力統計を取得しますGetData、D3D10_QUERY_DATA_SO_STATISTICS 構造体を返します。
D3D10_QUERY_SO_OVERFLOW_PREDICATE
BeginEnd の間でオーバーフローしたストリーミング出力バッファーを指定します。 GetData は BOOL - TRUE を 返します。つまり、オーバーフローが発生しました。 FALSE はオーバーフローがないことを意味します。 ストリーミング出力が複数のバッファーに書き込み、いずれかのバッファーがオーバーフローすると、すべての出力バッファーへの書き込みが停止します。 Direct3D によってオーバーフローが検出されると、エラーは発生しません。メモリは破損しません。 オーバーフローが発生したときにSO_STATISTIC クエリがオーバーフローを防ぐために必要なメモリ量をアプリケーションに知らせることができるように、この割り当ては、SO_STATISTICS クエリと組み合わせて使用できます。

要件

要件
Header d3d10.h

こちらもご覧ください

コア列挙