![]() |
|
TyphoonLabs' OpenGL Shading Language tutorials |
![]() |
| Chapter 1: Introduction to GLSL | ||
An Introduction to Programmable Hardware |
||
Brief History of the OpenGL Programmable Hardware Pipeline |
||
Fixed Function vs. Programmable Function |
||
|
Programmable Function Scheme |
|
Fixed Function Scheme |
||
Shader 'Input' Data |
||
|
Uniform Variables |
|
Vertex Attributes |
||
|
Varying Variables |
|
Shader 'Output' Data |
||
|
Vertex Shader |
|
Fragment Shader |
||
Simple GLSL Shader Example |
||
Shader Designer IDE |
||
|
User Interface |
|
|
Toolbar |
|
|
Menu |
|
|
State Properties |
|
|
|
Light States |
|
|
Vertex States |
|
|
Fragment States |
|
Code Window |
|
|
Uniform Variables Manager |
|
| Chapter 2: GLSL Basics | |
Introduction |
|
GLSL Language |
|
|
Mechanisms Borrowed from C++ |
Character Set |
|
|
Pre-processor Keywords |
|
Comments |
|
Variables and Types |
|
Type Descriptions |
|
Type Qualifiers |
|
Operators and Preference |
|
Subroutines |
|
Flow Control |
|
Built-in Variables |
|
Built-in Constants |
|
Built-in Attributes |
|
General Built-in Uniform States |
|
Varying Variables |
|
Built-in Functions |
| Chapter 3: GLSL Basic Shaders | |
Introduction |
|
First Basic Shader |
|
|
Simple Shader 1 |
|
Simple Shader 2: Using Varying Variables |
Using Built-in Uniforms and Attributes |
|
Texturing and Multitexturing (Vertex Attributes) |
|
Discard Shader and Subroutines |
|
Simple Illumination Model 1 |
|
Simple Illumination Model 2: Per Vertex Specular & Glossines |
|
Introduction |
Per Pixel Illumination Model |
Bump Mapping |
Simple Parallax Shader |
Mandelbrot Shader (Flow Control) |
Advanced Illumination Model |
| Chapter 5: Appendix | |
Using GLSL Shaders Within OpenGL Applications |
|
|
Loading and Using Shaders |
|
Using Uniforms |
|
Using Textures |
|
Using Vertex Attributes |
How To Use the 3DSMax5 Mesh Exporter |
|
References |
|
Contact: jrodriguez 'at' parallel-games.com


