Adressregister
Das a0-Register ist ein Adressregister. Ein einzelnes Register ist in Version 1 und _ Version _ 1 1 verfügbar. Das Adressregister, das als a0.x in _ vs. 1 1 festgelegt _ ist, kann als ganzzahliger Offset mit Vorzeichen für die relative Adressierung in die Konstantenregisterdatei verwendet werden. Für Versionen im Vergleich zu _ _ 2 0 und höher sind alle vier Komponenten (.x, .y, .z, .w) für die relative Adressierung verfügbar.
c[a0.x + n]
Das Adressregister kann nicht von einem Vertex-Shader gelesen werden. Es kann nur für die relative Adressierung eines konstanten Registers verwendet werden. Das Lesen von Werten außerhalb des zulässigen Bereichs gibt zurück (0,0, 0,0, 0,0, 0,0). Das Adressregister kann nur ein Ziel für die Anweisung mov - vs sein. Wenn eine Gleitkommazahl in ein integer-Register verschoben wird, erfolgt eine Rundung in die nächste Konvertierung.
Alle Shader müssen das Adressregister initialisieren, bevor sie es verwenden. Für Version _ 2 _ 0 und höher kann die mova-vs-Anweisung einen Gleitkommawert in ein Adressregister verschieben.
| Vertex-Shaderversionen | 1_1 | 2 _ 0 | 2 _ sw | 2 _ x | 3 _ 0 | 3 _ sw |
|---|---|---|---|---|---|---|
| Adressregister | x | x | x | x | x | x |