Funktions Anhang: Unterschied zwischen den Versionen
Flash (Diskussion | Beiträge) K () |
Flash (Diskussion | Beiträge) K (→Art der Parameterübergabe) |
||
(7 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
==Der Funktions Anhang== | ==Der Funktions Anhang== | ||
− | OpenGL Befehle sind immer nach einem ganz speziellen | + | OpenGL Befehle sind immer nach einem ganz speziellen Muster aufgebaut: |
{{Center|[[Bild:Befehlsaufbau_OpenGL.PNG]]}} | {{Center|[[Bild:Befehlsaufbau_OpenGL.PNG]]}} | ||
− | === | + | ===Bibliotheken=== |
− | Das Befehlschema ist nur für OpenGL Befehle definiert. Allerdings halten sich alle anderen Bibiotheken, die mit OpenGL zusammenarbeiten auch an das Schema, was das arbeiten | + | Das Befehlschema ist nur für OpenGL Befehle definiert. Allerdings halten sich alle anderen Bibiotheken, die mit OpenGL zusammenarbeiten auch an das Schema, was das arbeiten erleichtert. |
Folgende Bibiotheksbezeichner können vorkommen: | Folgende Bibiotheksbezeichner können vorkommen: | ||
Zeile 13: | Zeile 13: | ||
* '''wgl''' [[OpenGL-Funktionsübersicht#WGL|Funktionsübersicht]] | * '''wgl''' [[OpenGL-Funktionsübersicht#WGL|Funktionsübersicht]] | ||
* '''glX''' [[OpenGL-Funktionsübersicht#GLX|Funktionsübersicht]] | * '''glX''' [[OpenGL-Funktionsübersicht#GLX|Funktionsübersicht]] | ||
− | * '''glut''' | + | * '''glut''' |
===Anzahl der Parameter=== | ===Anzahl der Parameter=== | ||
Als Parameteranzahl kommt 2, 3 und 4 in Frage. | Als Parameteranzahl kommt 2, 3 und 4 in Frage. | ||
− | Wenn nur ein oder kein Parameter erwartet wird, wird keine 0 geschrieben sondern direkt der Typ angehängt. | + | Wenn nur ein oder kein Parameter erwartet wird, wird keine 0 bzw. 1 geschrieben sondern dieser Teil übersprungen und direkt der Typ angehängt. |
===Typ Kürzel=== | ===Typ Kürzel=== | ||
− | Ein bis zwei Buchstaben legen Typ der übergeben Parameter fest | + | Ein bis zwei Buchstaben legen den Typ der übergeben Parameter fest: |
− | {| | + | <div align="center"> |
+ | {| {{Prettytable_B1}} | ||
|'''Anhang''' | |'''Anhang''' | ||
|'''Bezeichnung''' | |'''Bezeichnung''' | ||
− | |''' | + | |'''Entspricht <br>Delphityp''' |
|- | |- | ||
|f | |f | ||
Zeile 59: | Zeile 60: | ||
|LongWord | |LongWord | ||
|} | |} | ||
+ | </div> | ||
− | + | Einige Beispiele: [[glTranslate]]'''f''', [[glRotate]]'''f''', [[glVertex]]2'''i''' | |
===Art der Parameterübergabe=== | ===Art der Parameterübergabe=== | ||
− | Am Schluss '''''kann''''' der Buchstabe "v" stehen um festzulegen, dass die Werte als ein einziger Zeiger auf ein | + | Am Schluss '''''kann''''' der Buchstabe "v" stehen um festzulegen, dass die Werte als ein einziger Zeiger auf ein Array des entsprechenden Types übergeben werden. |
− | z.B: [[glColor]]3b'''v''' | + | z.B: [[glColor]]3b'''v''' (Hier erwartet der Befehl '''ein''' Feld mit '''drei''' Byte Werten.) |
Aktuelle Version vom 27. Februar 2006, 14:21 Uhr
Inhaltsverzeichnis
Der Funktions Anhang
OpenGL Befehle sind immer nach einem ganz speziellen Muster aufgebaut:
Bibliotheken
Das Befehlschema ist nur für OpenGL Befehle definiert. Allerdings halten sich alle anderen Bibiotheken, die mit OpenGL zusammenarbeiten auch an das Schema, was das arbeiten erleichtert.
Folgende Bibiotheksbezeichner können vorkommen:
- gl Funktionsübersicht
- glu Funktionsübersicht
- wgl Funktionsübersicht
- glX Funktionsübersicht
- glut
Anzahl der Parameter
Als Parameteranzahl kommt 2, 3 und 4 in Frage.
Wenn nur ein oder kein Parameter erwartet wird, wird keine 0 bzw. 1 geschrieben sondern dieser Teil übersprungen und direkt der Typ angehängt.
Typ Kürzel
Ein bis zwei Buchstaben legen den Typ der übergeben Parameter fest:
Anhang | Bezeichnung | Entspricht Delphityp |
f | GLfloat | Single |
d | GLdouble | Double |
b | GLbyte | ShortInt |
s | GLshort | Smallint |
i | GLint | Integer(Longint) |
ub | GLubyte | Byte |
us | GLushort | Word |
ui | GLuint | LongWord |
Einige Beispiele: glTranslatef, glRotatef, glVertex2i
Art der Parameterübergabe
Am Schluss kann der Buchstabe "v" stehen um festzulegen, dass die Werte als ein einziger Zeiger auf ein Array des entsprechenden Types übergeben werden.
z.B: glColor3bv (Hier erwartet der Befehl ein Feld mit drei Byte Werten.)