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 Editor 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