シェーダー モデル 4

シェーダー モデル 4 は、シェーダー モデル 3 の機能のスーパーセットですが、例外として、シェーダー モデル 4 はシェーダー モデル 1 の機能をサポートしていません。シェーダー モデル 4 は、HLSL を使用してのみプログラム可能であるすべてのプログラム可能シェーダーに共通の機能セットを提供する共通シェーダー コアを使用して設計されています。

機能 能力
命令セット HLSL 関数
レジスタ セット レジスタ セットには、成分パッキングなどのための HLSL セマンティクスを使用して、定数バッファーやテクスチャー バッファーのメンバーを介してアクセスできます。
頂点シェーダー Max 制限なし
ピクセル シェーダー Max 制限なし
新しく追加されたシェーダー プロファイル gs_4_0、ps_4_0、vs_4_0、gs_4_1*、ps_4_1*、gs_4_1*
新しく追加されたエフェクト フレームワーク プロファイル fx_4_0、fx_4_1*

* - gs_4_1、ps_4_1、vs_4_1 および fx_4_1 は、Direct3D 10.1 以降でサポートされています。

シェーダー モデル 4 では、ジオメトリ シェーダー ステージという新しいパイプライン ステージがサポートされています。このステージは、ジオメトリの作成や既存ジオメトリの変更に使用することができます。シェーダー モデル 4 には 2 つの新しいオブジェクト タイプも追加されています。1 つは、ジオメトリ ステージからデータをストリーム出力するためのストリーム出力オブジェクトであり、もう 1 つは、テクスチャー サンプリング関数を実装しているテンプレート化されたテクスチャー オブジェクトです。

定数変数のパッキング規則 (DirectX HLSL)

シェーダー モデル 4 アセンブリ (DirectX HLSL)

関連項目

シェーダー モデルとシェーダー プロファイル