Freigeben über


D3D10_QUERY-Enumeration (d3d10.h)

Abfragetypen.

Syntax

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
} ;

Konstanten

 
D3D10_QUERY_EVENT
Wert: 0
Bestimmt, ob die GPU die Verarbeitung von Befehlen abgeschlossen hat oder nicht. Wenn die GPU die Verarbeitung von Befehlen abgeschlossen hat, gibt GetData S_OK zurück, und pData zeigt auf eine BOOL mit dem Wert TRUE. Bei Verwendung dieses Abfragetyps ist Begin deaktiviert.
D3D10_QUERY_OCCLUSION
Rufen Sie die Anzahl der Beispiele ab, die die Tiefen- und Schablonentests zwischen Anfang und Ende bestanden haben. GetData gibt einen UINT64 zurück. Wenn ein Tiefen- oder Schablonentest deaktiviert ist, wird jeder dieser Tests als Bestanden gezählt.
D3D10_QUERY_TIMESTAMP
Rufen Sie einen Zeitstempelwert ab, bei dem GetData einen UINT64-Wert zurückgibt. Diese Art von Abfrage ist nur nützlich, wenn zwei Zeitstempelabfragen in der Mitte einer D3D10_QUERY_TIMESTAMP_DISJOINT Abfrage ausgeführt werden. Der Unterschied von zwei Zeitstempeln kann verwendet werden, um zu bestimmen, wie viele Ticks verstrichen sind, und die D3D10_QUERY_TIMESTAMP_DISJOINT Abfrage bestimmt, ob diese Differenz ein zuverlässiger Wert ist und auch einen Wert aufweist, der zeigt, wie die Anzahl der Ticks in Sekunden konvertiert werden kann. Siehe D3D10_QUERY_DATA_TIMESTAMP_DISJOINT. Bei Verwendung dieses Abfragetyps ist Begin deaktiviert.
D3D10_QUERY_TIMESTAMP_DISJOINT
Bestimmt, ob ein D3D10_QUERY_TIMESTAMP zuverlässige Werte zurückgibt, und gibt auch die Häufigkeit des Prozessors an, sodass Sie die Anzahl verstrichener Ticks in Sekunden konvertieren können. GetData gibt einen D3D10_QUERY_DATA_TIMESTAMP_DISJOINT zurück. Diese Art von Abfrage sollte nur einmal pro Frame oder weniger aufgerufen werden.
D3D10_QUERY_PIPELINE_STATISTICS
Rufen Sie Pipelinestatistiken ab, z. B. die Anzahl der Pixel-Shaderaufrufe zwischen Anfang und Ende. GetData gibt eine D3D10_QUERY_DATA_PIPELINE_STATISTICS zurück.
D3D10_QUERY_OCCLUSION_PREDICATE
Ähnlich wie D3D10_QUERY_OCCLUSION, mit Ausnahme von GetData gibt eine BOOL zurück, die angibt, ob Beispiele die Tiefen- und Schablonentests bestanden haben oder nicht – TRUE bedeutet, dass mindestens ein bestanden wurde, FALSE bedeutet, dass keine bestanden wurde.
D3D10_QUERY_SO_STATISTICS
Rufen Sie Streamingausgabestatistiken ab, z. B. die Anzahl der Grundtypen, die zwischen Anfang und Ende gestreamt werden. GetData gibt eine D3D10_QUERY_DATA_SO_STATISTICS-Struktur zurück.
D3D10_QUERY_SO_OVERFLOW_PREDICATE
Bestimmt, ob einer der Streamingausgabepuffer zwischen Start und Ende überlaufen wird. GetData gibt einen BOOL - TRUE-Wert zurück, was bedeutet, dass ein Überlauf aufgetreten ist. False bedeutet, dass kein Überlauf aufgetreten ist. Wenn die Streamingausgabe in mehrere Puffer schreibt und einer der Puffer überläuft, wird das Schreiben in alle Ausgabepuffer beendet. Wenn ein Überlauf von Direct3D erkannt wird, wird dies verhindert , da kein Arbeitsspeicher beschädigt ist. Diese Prädication kann in Verbindung mit einer SO_STATISTICS Abfrage verwendet werden, sodass die SO_STATISTIC Abfrage bei einem Überlauf die Anwendung darüber informiert, wie viel Arbeitsspeicher benötigt wurde, um einen Überlauf zu verhindern.

Anforderungen

Anforderung Wert
Header d3d10.h

Weitere Informationen

Kernaufzählungen