Pixel-Shader
Pixel-Shader (auch Fragment-Shader bzw. Pixelshader) sind Assembler-ähnliche Programme, die vom Grafikprozessor einer 3D-Grafikkarte ausgeführt werden. Sie werden nach den Vertex-Shadern ausgeführt.
Zusätzliche Informationen zur Verarbeitungskette gibt es im Artikel zu den Shadern.
Unter einem Pixel-Shader versteht man auch eine programmierbare Einheit aus der Rendering-Pipeline eines Grafikprozessors, die ein Pixelprogramm (auch Fragmentprogramm) ausführt.
Pixel-Shader berechnen, im Gegensatz zu Vertex-Shadern, die mit Vertizes (Eckpunkte von dreidimensionalen Objekten) rechnen, mit den Pixeln (Bildpunkten), die gerendert werden. Mit Pixel-Shadern werden hauptsächlich Materialeigenschaften und Texturen verändert.
Beispielsweise kann hiermit Phong Shading realisiert werden, eine Shading-Variante, bei der Objekte, im Gegensatz zu Gouraud- und Flat Shading), sehr realistisch wirkend beleuchtet werden. Andere Effekte sind zum Beispiel Spiegelungen, Schattierung, Falloff, Lensglow und Lens Flares. Ein Pixelprogramm kann auch von HDR profitieren.
Pixel-Shader werden ab der GeForce 3-Generation unterstützt.
Verweise
- OpenGL Shading Language – Dokumentation zur Programmierung von Shadern in OpenGL
- Vertex- und Pixel-Shader – Ein Tutorium, das zeigt wie man Shader unter DirectX implementiert
- ZFX Graphics Series – Ein weiteres Tutorium, in dem man Shader in eine DX Anwendung einbaut
- Shader-Konzept – Ein Artikel, der verschiedene Shader-Techniken vorstellt