| The introduction to this article provides insufficient context for those unfamiliar with the subject. Please help improve the article with a good introductory style. |
| Please help improve this article or section by expanding it. Further information might be found on the talk page. (March 2007) |
A pixel shader is a shader program, often executed on a graphics processing unit. It adds 3D shading and lighting effects to pixels in an image, for example those in video games. Microsoft's DirectX and Silicon Graphics' OpenGL support pixel shaders. In OpenGL a pixel shader is called a fragment shader.
Contents |
Function
A pixel shader computes color and other attributes of each pixel. Pixel shaders range from always outputting the same color, to applying a lighting value, to doing bump mapping, shadows, specular highlights, translucency and other phenomena. A pixel shader alone cannot produce very complex effects, because it operates only on a single pixel, without knowledge of a scene's geometry or of neighboring pixels. A pixel shader is a computation kernel function. Pixel shaders can alter the depth of the pixel (for Z-buffering), or output more than one color if multiple render targets are active.
Programming
Pixel shaders have been programmed in Assembly, Cg, GLSL, HLSL and other languages.
Compatibility
Hardware
This shows which cards, graphic chips, and DirectX-Version supports which Pixel-Shader-Version. Graphic chips usually are fully downward compatible (3.0 chip supports 2.0, 1.1, etc.).
| PS version | DirectX version | 3DLabs | ATI | Intel | Matrox | NVIDIA | S3 Graphics | SiS | XGI |
|---|---|---|---|---|---|---|---|---|---|
| 1.0/1.1 | 8.0 | - | - | - | - | GeForce 3 series | - | Xabre-Series | - |
| 1.2 | 8.0a | Wildcat VP | - | - | - | - | - | - | - |
| 1.3 | 8.0a | - | - | - | Parhelia series | GeForce 4 Ti/Go series | - | Mirage 2 | - |
| 1.4 | 8.1 | - | Radeon R200 (8500-9250) | - | - | - | - | - | Volari V3 series (except V3XT) |
| 2.0 | 9.0 | Wildcat Realizm | Radeon R300 (9500-9800, X300-X600) | Intel GMA 900, 950, 3000, 3100 | - | - | DeltaChrome, GammaChrome, Chrome S2x series | Mirage 3, Mirage 3+ | Volari V3XT, Volari V5 series, Volari V8 series, Volari 8300, Volari XP10 |
| 2.0a | 9.0a | - | - | - | - | - | - | - | - |
| 2.0b | 9.0b | - | Radeon R420 (X700-X850) | - | - | GeForce FX series | - | - | - |
| 3.0 | 9.0c | - | Radeon R520 (X1300-X1950) | Intel GMA X3000 | - | GeForce 6 series, GeForce 7 series | - | - | - |
| 4.0 | 10 | - | Radeon R600 (HD 2400-HD 2900) | Intel GMA X3100, X3500 | - | GeForce 8 series, GeForce 9 Series, GeForce 200 Series, Quadro FX 1700 | - | Mirage 4 | - |
| 4.1 | 10.1 | - | Radeon R600 (HD 3xxx), Radeon R700 (HD 4xxx) | Intel GMA 500 | - | - | - | - | - |
(Italics indicate products that are not yet available.)
See also
References
- OpenGL Shading Language – Documentation of Shader in OpenGL
- GLSL Tutorial (engl.)
- OpenGL Shading Language examples
- Fundamentals of Pixel Shaders at Gamedev.net
No comments have been added.





