頂点シェーダー入力レジスタ。
頂点シェーダーを実行する前に、(1 つ以上の入力頂点ストリームを使用して) 各頂点のデータが頂点入力レジスタに読み込まれます。 入力レジスタは、v0 から v15 として指定された 16 個の 4 要素浮動小数点ベクトルで構成されます。 これらのレジスタは読み取り専用です。 入力レジスタは、頂点宣言を介して頂点データにバインドされます。
次のレジスタ プロパティは、各レジスタの動作を制御します。
財産 | 形容 |
---|---|
名前 | v[n] - n はオプションのレジスタ番号です。 0 は、省略した場合に使用される既定値です。 |
数える | 最大 16 個のレジスタ(v0 ~ v15)。 |
I/O アクセス許可 | 読み取り専用。 このレジスタは、API またはシェーダー内で書き込むことができません。 |
ポートの読み取り | 1. これは、1 つの命令内でレジスタを読み取ることができる回数です。 以下を参照してください。 |
1 つの命令でアクセスできる頂点入力レジスタは 1 つだけです。 ただし、命令内の各ソースは個別にスウィズルし、読み取り時にそのベクトルを否定できます。
例
頂点宣言を使用して 2D 頂点位置データをバインドして v0 を登録する例を次に示します。
頂点宣言は、アプリケーションに属しています。
D3DVERTEXELEMENT9 decl[] =
{
{ 0, 0, D3DDECLTYPE_FLOAT2, D3DDECLMETHOD_DEFAULT, D3DDECLUSAGE_POSITION, 0 },
D3DDECL_END()
};
対応する頂点シェーダー宣言を次に示します。
dcl_position v0
頂点シェーダーのバージョン | 1_1 | 2_0 | 2_sw | 2_x | 3_0 | 3_sw |
---|---|---|---|---|---|---|
Position Register | x | x | x | x | x | x |
関連トピック
-
頂点シェーダー レジスタ の