glFlush: Unterschied zwischen den Versionen
(→Siehe auch) |
DGLBot (Diskussion | Beiträge) K (GlFlush wurde nach glFlush verschoben) |
(kein Unterschied)
|
Version vom 5. Dezember 2005, 20:27 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 entleer 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 Programm 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.