next up previous contents
Next: Bibliotheken Up: OpenGL Previous: Pipeline Schritte   Contents


Zustände und der Kontext

OpenGL besteht im Grunde aus zwei Gattungen von Funktionen:

Die einen ändern den Zustand von internen Variablen wie zum Beispiel den Transformationsmatrizen, den aktiven Lichtquellen oder der gewählten Textur, die anderen schicken Geometriedaten (Streams) an die Grafikkarte. Letztere werden im Programm durch
\begin{lstlisting}[name=glBegin]
glBegin(GLenum mode);
\end{lstlisting}
und
\begin{lstlisting}[name=glEnd]
glEnd();
\end{lstlisting}
zu Blöcken zusammengeschlossen um es dem Treiber zu ermöglichen Optimierungen auf Geschwindigkeit vorzunehmen. Innerhalb dieser Blöcke dürfen keine Änderungen am internen Zustand OpenGLs vorgenommen werden.

Ein vollständiger Satz dieser internen Zustände wird Kontext genannt. Um OpenGL überhaupt nutzen zu können muss für ein Fenster in welches OpenGL zeichnen soll ein solcher Kontext erzeugt und vorgehalten werden. Dies muss ebenfalls vom Hostsystem erledigt werden.



2005-10-25 Michael Bayer - nightspawn.com