Anweisungen im Vergleich _ zu 2 _ x
Dieser Abschnitt enthält Referenzinformationen für die Vertex-Shaderversion 2 _ x-Anweisungen.
Es gibt verschiedene Typen von Vertex-Shaderanweisungen, wie in der Tabelle gezeigt. Spalten auf der rechten Seite bedeuten Folgendes:
- Anweisungsslots: Anzahl von Anweisungsslots, die von jeder Anweisung verwendet werden.
- Setup: Nicht arithmetische Anweisungen. Jeder Shader muss über eine Versionsanweisung verfügen und die erste Anweisung sein.
- Arithmetisch: Diese Anweisungen stellen die mathematischen Operationen in einem Shader zur Verfügung.
- Flow-Steuerelement: Mit diesen Anweisungen werden Flusssteuerungsfunktionen wie Schleife und ... endloop - vs, if bool - vs... else... endif-und Unterroutinenaufrufe.
- Neu: Diese Anweisungen sind neu in dieser Version.
Instruktionssatz
| Name | Beschreibung | Anweisungsslots | Einrichten | Arithmetik | Flusssteuerung | Neu |
|---|---|---|---|---|---|---|
| abs – vs | Absoluter Wert | 1 | x | |||
| hinzufügen – im Vergleich zu | Hinzufügen von zwei Vektoren | 1 | x | |||
| Break - vs | Break out of a loop - vs... endloop – vs oder rep... endrep-Block | 1 | x | x | ||
| break _ comp – vs | Bedingtes Ausbrechen einer Schleife im Vergleich zu... endloop – vs oder rep... endrep-Block mit einem Vergleich | 3 | x | x | ||
| Breakp im Vergleich zu | Break out of a loop - vs... endloop – vs oder rep... endrep-Block basierend auf einem Prädikat | 3 | x | x | ||
| call – vs | Aufrufen einer Unterroutine | 2 | x | |||
| callnz bool – vs | Aufrufen einer Unterroutine, wenn ein boolescher Register nicht 0 (null) ist | 3 | x | |||
| callnz pred – vs | Aufrufen einer Unterroutine, wenn ein Prädikatregister nicht 0 (null) ist | 3 | x | x | ||
| crs – im Vergleich zu | Produktübergreifend | 2 | x | |||
| dcl _ usage input (sm1, sm2, sm3 – vs asm) | Deklarieren von Eingabevertexregistern (siehe Register – im Vergleich zu _ 2 _ x) | 0 | x | |||
| def – vs | Definieren von Konstanten | 0 | x | |||
| defb – vs | Definieren einer booleschen Konstante | 0 | x | |||
| defi – vs | Definieren einer ganzzahligen Konstante | 0 | x | |||
| dp3 – vs | Punktprodukt mit drei Komponenten | 1 | x | |||
| dp4 – vs | Punktprodukt mit vier Komponenten | 1 | x | |||
| dst – vs | Berechnen des Entfernungsvektors | 1 | x | |||
| else – vs | Begin an else - vs block | 1 | x | |||
| endif – vs | Beenden eines if bool - vs... else – vs block | 1 | x | |||
| endloop – vs | Ende einer Schleife – vs. Block | 2 | x | |||
| endrep – vs | Ende eines Wiederholungsblocks | 2 | x | |||
| exp – vs | Vollständige Genauigkeit 2x | 1 | x | |||
| exp – vs | Teilweise Genauigkeit 2x | 1 | x | |||
| frc – vs | Bruchkomponente | 1 | x | |||
| if bool – vs | Begin an if bool - vs block (using a Boolean condition) | 3 | x | |||
| if _ comp - vs | Beginnen eines if bool - vs-Blocks mit einem Vergleich | 3 | x | x | ||
| if pred – vs | Begin an if bool - vs block with a predicate condition | 3 | x | x | ||
| label – im Vergleich zu | Bezeichnung | 0 | x | |||
| lit – vs | Berechnung der Teilbeleuchtung | 3 | x | |||
| log – im Vergleich zu | Protokoll mit vollständiger Genauigkeit₂(x) | 1 | x | |||
| logp – vs | Protokoll mit partieller Genauigkeit₂(x) | 1 | x | |||
| -Schleife im Vergleich zu | Loop | 3 | x | |||
| lrp – vs | Lineare Interpolation | 2 | x | |||
| m3x2 – vs | 3x2 multiplizieren | 2 | x | |||
| m3x3 – vs | 3x3 Multiplikation | 3 | x | |||
| m3x4 – vs | 3x4 Multiplikation | 4 | x | |||
| m4x3 – vs | 4x3 multiplizieren | 3 | x | |||
| m4x4 – vs | 4x4-Multiplikation | 4 | x | |||
| mad – vs | Multiplizieren und Hinzufügen | 1 | x | |||
| max – vs | Maximum | 1 | x | |||
| min – vs | Minimum | 1 | x | |||
| mov – vs | Move | 1 | x | |||
| mova im Vergleich zu | Verschieben von Daten aus einem Gleitkommaregister in das Adressregister (a0) | 1 | x | |||
| mul – vs | Multiplizieren | 1 | x | |||
| nop – vs | Keine Operation | 1 | x | |||
| nrm – vs | Normalisieren eines 4D-Vektors | 3 | x | |||
| pow – vs | xy | 3 | x | |||
| rcp – vs | Gegenseitige | 1 | x | |||
| rep – im Vergleich zu | Repeat | 3 | x | |||
| ret – vs | Ende einer Unterroutine oder eines Main-Paars | 1 | x | |||
| rsq – vs | Reziproke Quadratwurzel | 1 | x | |||
| setp _ comp – vs | Festlegen des Prädikatregisters | 1 | x | x | ||
| sge – im Vergleich zu | Größer als oder gleich im Vergleich | 1 | x | |||
| sgn – vs | Signieren | 3 | x | |||
| sincos – vs | Sinus und Kosinus | 8 | x | |||
| slt – vs | Kleiner als vergleichen | 1 | x | |||
| sub – im Vergleich zu | Subtrahieren | 1 | x | |||
| Vs | Version | 0 | x |