HLSL のプログラミング ガイド
データはプリミティブのストリームとしてグラフィックス パイプラインに入り、シェーダー ステージによって処理されます。 実際のシェーダー ステージは Direct3D のバージョンによって異なりますが、頂点、ピクセル、ジオメトリの各ステージは必ず含まれます。 その他のステージには、テセレーション用のハル シェーダーとドメイン シェーダー、コンピューティング シェーダーなどがあります。 これらのステージは、ハイ レベル シェーディング言語 (HLSL) を使用して完全にプログラミングできます。
HLSL シェーダーは、作成者時または実行時にコンパイルし、実行時に適切なパイプライン ステージに設定できます。 Direct3D 9 シェーダーは、 シェーダー モデル 1、シェーダー モデル2、シェーダー モデル3 を使用して設計できます。Direct3D 10 シェーダーは、 シェーダー モデル 4 でのみ設計できます。 Direct3D 11 シェーダーは、 シェーダー モデル 5 で設計できます。 Direct3D 11.3 とDirect3D 12はシェーダー モデル 5.1 で設計でき、Direct3D 12はシェーダー モデル 6 でも設計できます。
このセクションの内容
トピック | 説明 |
---|---|
シェーダー リンクの使用 | プリコンパイル済み HLSL 関数を作成し、それらをライブラリにパッケージ化し、実行時に完全なシェーダーにリンクする方法を示します。 |
Direct3D 9 での HLSL シェーダーの記述 | |
Direct3D 9 でのシェーダーの使用 | |
Direct3D 10 でのシェーダーの使用 | |
HLSL シェーダーの最適化 | |
Visual Studio でのシェーダーのデバッグ | シェーダーをデバッグするための最新のツールが、Visual Studio グラフィックス デバッガーと呼ばれる Microsoft Visual Studio の機能として提供されるようになりました。 |
シェーダーのコンパイル | シェーダー コードをコンパイルするさまざまな方法と、シェーダー コードのファイル拡張子の規則を見てみましょう。 |
コンパイラ ターゲットの指定 | ここでは、D3DCompile* 関数と HLSL コンパイラがサポートするさまざまなプロファイルのターゲットを示します。 |
In-Placeイメージ編集のための開梱とパッキングDXGI_FORMAT | |
HLSL の最小精度の使用 | Windows 8以降、グラフィックス ドライバーは、指定したビット精度以上の精度を使用して、最小精度 HLSL スカラー データ型を実装できます。 |
HLSL シェーダー モデル 5 | |
HLSL シェーダー モデル 5.1 | このセクションでは、シェーダー モデル 5.1 の機能について説明します。実際には D3D12 と D3D11.3 に適用されます。 すべての DirectX 12 ハードウェアでは、シェーダー モデル 5.1 がサポートされています。 |
HLSL シェーダー モデル 6.0 | HLSL シェーダー モデル 6.0 に追加されたウェーブ操作の組み込みについて説明します。 |
HLSL シェーダー モデル 6.4 | HLSL シェーダー モデル 6.4 に追加された機械学習の組み込みについて説明します。 |