ピクセルシェーダ
出典: フリー百科事典『ウィキペディア(Wikipedia)』
ピクセルシェーダ(pixel shader、PS)はシェーダプログラムであり、通常はGPUで実行される。OpenGLではフラグメント(断片)シェーダと呼ばれる。
[編集] 機能
ピクセルシェーダはピクセルを操作する機能であり、基本的には頂点シェーダからの情報を元にテクスチャを合成したり表面色を適用したりする。これをプログラミングし、GPUで実行することにより、バンプマッピング等のより高度なエフェクトをCPUですべて実行するよりもはるかに高いパフォーマンスで実現できる。このことから転じ、ピクセルを操作するGPU用プログラム自体をもピクセルシェーダと呼ぶようになったが、厳密には誤用・誤称である。
[編集] プログラミング
ピクセル/フラグメントシェーダを作成できるプログラミング言語は下記の通り。
- DirectX中間アセンブリ言語
- ARBフラグメントプログラム
- Cg
- GLSL(ARBフラグメントシェーダ)
- HLSL
[編集] 互換性
[編集] ハードウェア
以下の表はグラフィックカードの概略であり、どのグラフィックチップとDirectXのバージョンの組み合わせがどのバージョンのピクセルシェーダプログラムをサポートしているのかを示している。グラフィックチップは一般的に完全な下位互換性があると考えられる。3.0対応のチップは2.0や1.1にも対応している。
| PS version |
DirectX version |
3Dlabs |
ATI |
インテル |
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) |
- |
- |
- |
- |
Mirage 3 |
Volari V3 series (V3XTを除く) |
| 2.0 |
9.0 |
Wildcat Realizm |
Radeon R300 (9500-9800, X300-X600) |
Intel GMA 900 |
- |
GeForce FX Series |
DeltaChrome, GammaChrome, Chrome S2x series,Chrome9 HC |
Mirage 3+ |
Volari V3XT, Volari V5 series, Volari V8 series, Volari 8300, Volari XP10 |
| 2.0a |
9.0b |
- |
- |
- |
- |
GeForce FX Series |
- |
- |
- |
| 2.0b |
9.0b |
- |
Radeon R420 (X700-X850) |
- |
- |
- |
- |
- |
- |
| 3.0 |
9.0c |
- |
Radeon X1xxx |
Intel GMA 950(3.0はソフトウェアエミュレーション), 3000, 3100 |
M Series |
GeForce 6 series, GeForce 7 series |
- |
- |
- |
| 4.0 |
10 |
- |
Radeon HD 2xxx |
Intel GMA X3100以降のシリーズ |
- |
GeForce 8 series,GeForce 9 series |
- |
- |
- |
| 4.1 |
10.1 |
- |
Radeon HD 3xxx,Radeon HD 4xxx |
HD Graphics 2000/3000 |
- |
GeForce GT 200 Series |
Chrome400/500 |
- |
- |
| 5.0 |
11 |
- |
Radeon HD 5xxx |
HD Graphics 2500/4000 |
- |
GeForce GTX 400 Series |
- |
- |
- |
[編集] 関連項目