glGetQueryObject
Inhaltsverzeichnis
glGetQueryObject
Name
glGetQueryObject - Fragt den Zustand eines Occlusion Query-Objektes ab.
Delphi-Spezifikation
procedure glGetQueryObjectiv(id: GLuint; pname: GLenum; params: PGLint); procedure glGetQueryObjectuiv(id: GLuint; pname: GLenum; params: PGLuint);
Parameter
id | Id des abzufragenden Query-Objektes. |
---|---|
pname | Parametername, der abgefragt werden soll. Mögliche Werte sind GL_QUERY_RESULT und GL_QUERY_RESULT_AVAILABLE. |
params | Enthält die angeforderten Daten bezüglich der Eigenschaft pname. |
Beschreibung
glGetQueryObject liefert über params Werte der Eigenschaft pname des Query-Objektes mit der Id id zurück.
Zwei verschiedene Eigenschaften können abgefragt werden:
GL_QUERY_RESULT
- params liefert das Ergebnis eines Query-Objektes, also den Wert des Sample-Zählers (siehe glBeginQuery).
- Falls GL_QUERY_COUNTER_BITS auf 0 gesetzt ist, wird immer 0 zurückgeliefert.
GL_QUERY_RESULT_AVAILABLE
- params liefert GL_TRUE, falls das Ergebnis für ein Query-Objekt vorliegt, ansonsten GL_FALSE.
Es kann zu einer unbestimmten Verzögerung kommen, bevor das Ergebnis einer Occlusion-Query vorliegt.
Daher ist es sinnvoll, vor der Abfrage eines Occlusion-Query-Objektes zu prüfen, ob GL_QUERY_RESULT_AVAILABLE den Wert GL_TRUE zurückliefert.
Hinweise
glGetQueryObject ist erst ab OpenGL 1.5 oder höher verfügbar.
Für jede Occlusion-Query muss nach endlicher Zeit ein Query-Ergebnis vorliegen.
Ist für eine Query ein Ergebnis verfügbar, so muss für jede Occlusion-Query, die vor dieser mit glBeginQuery/glEndQuery definiert wurde, GL_QUERY_RESULT_AVAILABLE gleich GL_TRUE sein.
Fehlermeldungen
- GL_INVALID_OPERATION
- id ist keine zulässige Id eines Query-Objektes oder das abzufragende Query-Objekt ist noch aktiv (ein Query-Objekt ist aktiv, wenn es mit glBeginQuery gestartet, aber noch nicht mit glEndQuery abgeschlossen wurde).
Zugehörige Wertrückgaben
glGetQuery mit Token GL_CURRENT_QUERY gibt die momentan aktive Query-ID zurück.
glGetQuery mit Token GL_QUERY_COUNTER_BITS gibt die Anzahl der Bits des Occlusion-Query-Zählers zurück.
Siehe auch
glBeginQuery, glDeleteQueries, glEndQuery, glGenQueries, glGetQuery, glIsQuery