次の方法で共有


入力レジスタ

頂点シェーダー入力レジスタ。

頂点シェーダーを実行する前に、(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

 

頂点シェーダー レジスタ