glFlush: Unterschied zwischen den Versionen
K (Kategorie GL3 hinzugefügt) |
K (Kategorisierung) |
||
Zeile 35: | Zeile 35: | ||
[[Kategorie:GL|Flush]] | [[Kategorie:GL|Flush]] | ||
− | [[Kategorie:GL1.0]] | + | [[Kategorie:GL1.0|Flush]] |
− | [[Kategorie:GL3]] | + | [[Kategorie:GL3|Flush]] |
Aktuelle Version vom 18. Juni 2011, 14:46 Uhr
Inhaltsverzeichnis
glFlush
Name
glFlush - Erzwingt die Ausführung aller anstehenden OpenGL-Befehle in einem endlichen Zeitraum.
Delphi-Spezifikation
procedure glFlush;
Beschreibung
Je nach OpenGL-Implementation kann es vorkommen, dass bestimmte Befehle in verschiedenen Bereichen gepuffert werden, z.B. in Netzwerkpuffern oder auf der Grafikkarte selbst. glFlush entleert alle diese Puffer und führt dazu, dass die dort zwischengelagerten Befehle so schnell wie möglich ausgeführt werden (abhängig davon wie schnell gerendert werden kann). Obwohl diese Ausführung nicht in einem vorgegebenen Zeitraum abgeschlossen werden kann, so geschieht dies jedoch in einer endlichen Zeitspanne.
Da jedes OpenGL-Programm über ein Netzwerk ausgeführt werden kann, oder auf einem Beschleuniger der Befehle puffert, sollten Programme dann glFlush aufrufen, wenn sie davon ausgehen, dass alle vorher übergebenen Befehle auch ausgeführt sind. glFlush ruft man z.B. dann auf, wenn man auf Nutzereingaben wartet, die vom fertigen Bild abhängig sind.
Hinweise
glFlush kann zu jedem Zeitpunkt zurückspringen. Es wird nicht gewartet, bis alle vorher aufgerufenen GL-Befehle beendet sind.
Fehlermeldungen
GL_INVALID_OPERATION wird generiert, wenn glFlush zwischen einem glBegin und dem passenden glEnd aufgerufen wird.