ソース パラメーター トークン
ソースパラメーター トークンは、ソースレジスタのプロパティを記述し、次のビットで構成されます。
Bits
[10:00] ビット 0 から 10 はレジスタ番号 (レジスタ ファイル内のオフセット) を示します。
[12:11] ビット 11 および 12 は、レジスタの種類を示す 4 番目と 5 番目のビット [3,4] です。
[13] 3_0 より前のバージョンのピクセル シェーダー (PS) の場合、ビット 13 は予約され、0x0に設定されます。
ピクセル シェーダー (PS) バージョン 3_0 以降およびすべてのバージョンの頂点シェーダー (VS) の場合、ビット 13 は相対アドレス指定モードが使用されているかどうかを示します。 1 に設定すると、相対アドレス指定が適用されます。
[15:14] PS および VS のすべてのバージョン用に予約されています。 この値は 0x0 に設定されます。
[23:16] ビット 16 から 23 は チャネル スウィズルを示します。 すべての算術演算は、4 つの並列チャンネル (X、Y、Z、W) で実行されます。 スウィズルは、どのソース コンポーネントが操作のチャンネルに参加するかを指定します。 スウィズルの詳細については、最新の DirectX SDK ドキュメントを参照してください。 このフィールドのビットは、次のチャンネルにスウィズルを指定します。
Bits | チャネル |
---|---|
17:16 |
チャンネル X スウィズル |
19:18 |
チャンネルl Y スウィズル |
21:20 |
チャンネル Z スウィズル |
23:22 |
チャンネル W スウィズル |
上記のビットのセット内の次の値は、操作のチャンネルで使用されるソース コンポーネントを指定します。
値 | コンポーネント |
---|---|
0x0 |
コンポーネント X が使用されます。 |
0x1 |
コンポーネント Y が使用されます。 |
0x2 |
コンポーネント Z が使用されます。 |
0x3 |
コンポーネント W が使用されます。 |
たとえば、19:18 ビットが 0x2 に設定されている場合、コンポーネント Z がチャンネル Y 演算のソースとして使用されます。
[27:24] ビット 24 から 27 は、ソース修飾子を示します。 この 4 ビット値は、次のソース修飾子の種類を示します。
値 | ソース修飾子の種類 |
---|---|
0x0 |
なし |
0x1 |
Negate |
0x2 |
バイアス |
0x3 |
バイアスと否定 |
0x4 |
署名 (bx2) |
0x5 |
署名 (bx2) と否定 |
0x6 |
補足 |
0x7 |
x2 (PS 1_4) |
0x8 |
x2 および否定 (PS 1_4) |
0x9 |
dz (Z 成分による除算 - PS 1_4) |
0xa |
dw (W コンポーネント âˆ' PS 1_4 で除算) |
0xb |
abs(x) コンピューティング絶対値 |
0xc |
-abs(x) は絶対値を計算し、否定します |
0xd |
NOT. プレディケーション レジスタ (BOOL) にのみ適用されます。 従って、論理 NOT です。 |
0xe-0xf |
予約されています。 |
[30:28] ビット 28 から 30 は、レジスタの種類を示す最初の 3 ビット [0,1,2] です。
[31] ビット 31 は 0x1。
コメント
ビット 28、29、30、11、および 12 は、レジスタの種類を示す 5 ビット値を形成します。 レジスタの種類については、「シェーダー レジスタの種類」を参照してください。
要件
Windows Vista 以降のバージョンの Windows オペレーティング システムで使用できます。