ピクセルシェーダ

出典: フリー百科事典『ウィキペディア(Wikipedia)』
移動: 案内, 検索
ファイル:Sauerbraten screenshot 878348.jpg
ノーマル(法線)マップによるでこぼこした壁、波紋、水面へのぼやけた感じの写りこみはピクセルシェーダによるよくある表現である。(画像はSauerbratenのスクリーンショット)

ピクセルシェーダ(pixel shaderPS)はシェーダプログラムであり、通常は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 - - -

[編集] 関連項目

個人用ツール
名前空間

変種
操作
案内
ヘルプ
ツールボックス
他の言語