Pixelformate
Ein Pixelformat gibt mehrere Eigenschaften einer OpenGL-Zeichnungsoberfläche an. Einige der Eigenschaften, die durch ein Pixelformat angegeben werden, sind:
- Gibt an, ob der Pixelpuffer ein- oder doppelt gepuffert ist.
- Gibt an, ob die Pixeldaten in RGBA- oder Farbindexform vorliegen.
- Die Anzahl der Bits, die zum Speichern von Farbdaten verwendet werden.
- Die Anzahl der Bits, die für den Tiefenpuffer (Z-Achse) verwendet werden.
- Die Anzahl der Bits, die für den Schablonenpuffer verwendet werden.
- Die Anzahl der Überlagerungs- und Unterlageebenen.
- Verschiedene Sichtbarkeitsmasken.
Die Microsoft-Implementierung von OpenGL für Windows verwendet die PIXELFORMATDESCRIPTOR-Datenstruktur , um Pixelformatdaten zu übermitteln. Die Elemente der Struktur geben die vorherigen Eigenschaften und mehrere andere an.
Ein bestimmter Gerätekontext kann mehrere Pixelformate unterstützen. Windows identifiziert die Pixelformate, die ein Gerätekontext unterstützt, mit aufeinanderfolgenden, einbasierten Indexwerten (1, 2, 3, 4 usw.). Ein Gerätekontext kann nur ein aktuelles Pixelformat aufweisen, das aus den unterstützten Pixelformaten ausgewählt wird.
Jedes Fenster hat sein eigenes aktuelles Pixelformat in OpenGL in Windows. Dies bedeutet beispielsweise, dass eine Anwendung gleichzeitig RGBA- und Farbindex-OpenGL-Fenster oder einzel- und doppelt gepufferte OpenGL-Fenster anzeigen kann. Diese Funktion für das Pixelformat pro Fenster ist auf OpenGL-Fenster beschränkt.
In der Regel rufen Sie einen Gerätekontext ab, legen das Pixelformat des Gerätekontexts fest und erstellen dann einen OpenGL-Renderingkontext, der für dieses Gerät geeignet ist.
Hinweis
Sie legen das Pixelformat vor dem Erstellen eines Renderingkontexts fest, da der Renderingkontext das Pixelformat des Gerätekontexts erbt.
Zugehörige Themen