dcl_input_sv (sm4 - asm)
システム 値 が前のステージから提供されることを想定するシェーダー入力レジスタを宣言します。
dcl_input_sv vN[.mask], systemValueName[, interpolationMode] |
---|
Item | 説明 |
---|---|
vN |
[入力]頂点データ レジスタ。
|
systemValueName |
[入力]"SV_" プレフィックスのない文字列であるシステム値名 ( システム値セマンティクスを参照)。 |
interpolationMode |
[in] オプション。 ラスター化中の値の計算方法に影響する補間モード。モードはピクセル シェーダーでのみ使用されます。 次のいずれかの値を指定できます。
|
システム値宣言のコンポーネント マスクには、[xyzw] の任意の適切なサブセットを指定できます。宣言は重複しない可能性があります (各宣言はシーケンス xyzw に従う必要があります)。 スカラー システム値 (クリップ距離やカリング距離など) を宣言する場合は、1 つのレジスタで複数のシステム値を宣言できます。 これを行う場合は、補間モードなどの他の修飾子が一致していることを確認します。
この命令は、次のシェーダー ステージに適用されます。
頂点シェーダー | ジオメトリ シェーダー | ピクセル シェーダー |
---|---|---|
x | x | x |
この命令は、アセンブリ内のシェーダーのデバッグに役立つよう含まれています。シェーダー モデル 4 を使用してアセンブリ言語でシェーダーを作成することはできません。
例
次に例をいくつか示します。
// valid
dcl_input v0.y, linear
dcl_input_sv v0.w, clipDistance
dcl_input_sv v0.z, cullDistance
// invalid declarations
dcl_input v0.y, linear
dcl_input_sv v0.x, clipDistance // the y component was previously declared, this declaration must use
// either the z or w component
dcl_input v0.y, linearNoPerspective // the interpolation mode is linear-no-perspective
dcl_input_sv v0.z, renderTargetArrayIndex, constant // the interpolation modes is constant
// the interpolation modes must match
最小シェーダー モデル
この関数は、次のシェーダー モデルでサポートされています。
シェーダー モデル | サポートされています |
---|---|
シェーダー モデル 5 | はい |
シェーダー モデル 4.1 | はい |
シェーダー モデル 4 | はい |
シェーダー モデル 3 (DirectX HLSL) | X |
シェーダー モデル 2 (DirectX HLSL) | X |
シェーダー モデル 1 (DirectX HLSL) | X |