glFlush: Unterschied zwischen den Versionen
(→Hinweise) |
K (Kategorisierung) |
||
(6 dazwischenliegende Versionen von 5 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
= glFlush = | = glFlush = | ||
− | + | ||
+ | |||
== Name == | == Name == | ||
'''glFlush''' - Erzwingt die Ausführung aller anstehenden OpenGL-Befehle in einem endlichen Zeitraum. | '''glFlush''' - Erzwingt die Ausführung aller anstehenden OpenGL-Befehle in einem endlichen Zeitraum. | ||
− | + | ||
+ | |||
== Delphi-Spezifikation == | == Delphi-Spezifikation == | ||
− | procedure '''glFlush''' | + | procedure '''glFlush'''; |
+ | |||
+ | |||
− | |||
== Beschreibung == | == 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''' | + | 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 == | == Hinweise == | ||
− | '''glFlush''' kann zu jedem Zeitpunkt zurückspringen. Es wird nicht gewartet bis alle vorher aufgerufenen GL-Befehle beendet sind. | + | '''glFlush''' kann zu jedem Zeitpunkt zurückspringen. Es wird nicht gewartet, bis alle vorher aufgerufenen GL-Befehle beendet sind. |
+ | |||
+ | |||
− | |||
== Fehlermeldungen == | == Fehlermeldungen == | ||
'''GL_INVALID_OPERATION''' wird generiert, wenn '''glFlush''' zwischen einem [[glBegin]] und dem passenden [[glEnd]] aufgerufen wird. | '''GL_INVALID_OPERATION''' wird generiert, wenn '''glFlush''' zwischen einem [[glBegin]] und dem passenden [[glEnd]] aufgerufen wird. | ||
− | + | ||
+ | |||
== Siehe auch == | == Siehe auch == | ||
[[glFinish]] | [[glFinish]] | ||
+ | |||
+ | [[Kategorie:GL|Flush]] | ||
+ | [[Kategorie:GL1.0|Flush]] | ||
+ | [[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.