Shading languages
Shading languages: GeneralAll shading languages share common features and pretty much do the same thing with more or less restrictions/flexibility, for example all have vertex and fragment shaders with fixed functionality in between, all support vector types as a fundamental type and all generate interpolated fragments for the fragment program input from the vertex program output. Before delving into the details of any one language one should first understand what a shading language does in general and where it fits/what it replaces in the overall graphics pipeline. |
|
OpenGL Shading Language (GLSL)This section discusses the OpenGL Shading Language, or GLSL. |
Shading languages: CgThis section discusses NVidia's proprietary Cg Shading language. |
Shading languages: ARB assembly-levelThis section discusses ARB_fragment_program and ARB_vertex_program. |
Shading languages: vendor-specific assembly-levelThis section discusses the various vendor-specific shading languages. |
GLSL : common mistakesThis section discusses common mistakes made when using GLSL. |
|
Selecting_a_Shading_LanguageThis section looks at each shading language's pros and cons, to help you decide which one is right for your project. |
|
Vertex Texture FetchThis section looks at how to implement Vertex Texture Fetch. |
|
Texture SamplingThis section looks at what happens when you sample a texture. |
|
Geometry ShadersGeometry Shaders. |
|
GLSL : recommendationsThis section makes a few recommendations. |
|
GLSL : nVidia specific featuresThis section looks at nVidia specific features. |
|
GLSL : ATI/AMD specific featuresThis section looks at ATI/AMD specific features. |