Next: Praxis: Linken von GLSL
Up: Datentypen und Variablen
Previous: Datentypen
Contents
Variablen
Einfache Variablen können wie gewohnt deklariert werden
Allerdings gibt es in GLSL - anders als zum Beispiel in C - keine automatischen
Typecasts beim initialisieren von Variablen, stattdessen wird stark auf das
Konzept von Konstruktoren zurückgegriffen, dem von C++ nicht unähnlich:
Wie leicht zu sehen ist gibt es eine weite Reihe von Konstruktoren, dies gilt insbesondere
für Matrizen. Diese sollen allerdings an dieser Stelle nicht alle aufgeführt werden.
Für Variablen gibt es außerdem einige Qualifier die hier kurz erläutert werden sollen:
- const
- - Kompilierzeitkonstante, kann nicht geändert werden
- uniform
- - globale Variable welche von der Applikation an den Shader übergeben wird,
kann in Vertex und Fragment Shadern gelesen, aber nicht geschrieben werden.
- attribute
- - globale Variable welche von OpenGL an den Vertex Shader übergeben wird,
kann nur in Vertex Shadern gelesen, aber nicht verändert werden.
- varying
- - Variable zum Austausch interpolierter Daten vom Vertex Shader zum
Fragment Shader.
2005-10-25 Michael Bayer - nightspawn.com