Eingabedaten
Die OpenGL-Pipeline erfordert die Eingabe mehrerer Datentypen:
- Scheitelpunkte. Scheitelpunkte beschreiben die Form des gewünschten geometrischen Objekts. Verwenden Sie zum Angeben von Scheitelpunkten glVertex* -Funktionen in Verbindung mit glBegin und glEnd , um einen Punkt, eine Linie oder ein Polygon zu erstellen. Sie können glRect auch verwenden, um ein gesamtes Rechteck gleichzeitig zu beschreiben.
- Edgeflag. Standardmäßig sind alle Ränder von Polygonen Begrenzungsränder. Verwenden Sie glEdgeFlag* , um das Edgeflag explizit festzulegen.
- Aktuelle Rasterposition. Mit glRasterPos* angegeben, wird die aktuelle Rasterposition verwendet, um Rasterkoordinaten für Pixel- und Bitmapzeichnungsvorgänge zu bestimmen.
- Aktuelle Normalität. Ein normaler Vektor, der einem bestimmten Scheitelpunkt zugeordnet ist, bestimmt, wie eine Oberfläche an diesem Scheitelpunkt im dreidimensionalen Raum ausgerichtet ist. Dies wiederum beeinflusst, wie viel Licht dieser bestimmte Scheitelpunkt empfängt. Verwenden Sie glNormal* , um einen normalen Vektor anzugeben.
- Aktuelle Farbe. Die Farbe eines Scheitelpunkts bestimmt zusammen mit den Lichtverhältnissen die endgültige, beleuchtete Farbe. Die Farbe wird mit glColor* angegeben, wenn sie sich im RGBA-Modus befindet, oder mit glIndex* im Farbindexmodus.
- Aktuelle Texturkoordinaten. Mit glTexCoord* angegeben, bestimmen Texturkoordinaten die Position in einer Texturkarte, die einem Scheitelpunkt eines Objekts zugeordnet werden soll.
Hinweis
Wenn glVertex* aufgerufen wird, erbt der resultierende Scheitelpunkt die aktuellen Randflag-, Normal-, Farb- und Texturkoordinaten. Daher müssen glEdgeFlag*, glNormal*, glColor* und glTexCoord* vor glVertex* aufgerufen werden, wenn sie den resultierenden Scheitelpunkt beeinflussen sollen.