glGetQueryiv

Aus DGL Wiki
Wechseln zu: Navigation, Suche

glGetQuery

Name

glGetQuery - Fragt generelle Occlusion Query-Informationen ab.


Delphi-Spezifikation

procedure glGetQueryiv(target: GLenum; pname: GLenum; params: PGLint);

Parameter

target Muss GL_SAMPLES_PASSED sein.
pname Parametername, der abgefragt werden soll.
Mögliche Werte sind GL_CURRENT_QUERY und GL_QUERY_COUNTER_BITS.
params Enthält den angeforderten Wert bezüglich der Eigenschaft pname.


Beschreibung

glGetQuery liefert über params Werte der Eigenschaft pname einer Occlusion-Query über das Query-Ziel target zurück.
Zwei verschiedene Eigenschaften können abgefragt werden:

GL_CURRENT_QUERY

params liefert den Namen des momentan aktiven Query-Objektes, oder 0 , falls kein Query-Objekt aktiv ist (ein Query-Objekt ist aktiv, falls es mit glBeginQuery gestartet, aber noch nicht mit glEndQuery beendet wurde).

GL_QUERY_COUNTER_BITS

params liefert die Bitanzahl des Sample-Zählers für target. Die Anzahl der Query-Zähler-Bits kann 0 sein, in diesem Falle enthält der Zähler keine nützlichen Werte.

Ansonsten ist die minimal erlaubte Bitanzahl eine Funktion der implementationsabhängigen maximalen Viewport-Dimensionen (GL_MAX_VIEWPORT_DIMS). In diesem Falle muss der Zähler in der Lage sein für jeden Pixel im Viewport mindestens zwei Overdraws zu repräsentieren.
Die Formel, um den erlaubten Minimalwert zu berechnen, lautet (n ist die minimale Anzahl der Bits):

Occlusion mincounterbits formel.png

Hinweise

glGetQuery ist erst ab OpenGL 1.5 oder höher verfügbar.


Fehlermeldungen

GL_INVALID_ENUM
target ist nicht GL_SAMPLES_PASSED.

Siehe auch

glBeginQuery, glDeleteQueries, glEndQuery, glGenQueries, glGetQueryObject, glIsQuery