Instructions - vs_3_0
Cette section contient des informations de référence pour les instructions du nuanceur de vertex version 3_0.
Il existe plusieurs types d’instructions de nuanceur de vertex, comme indiqué dans le tableau. Les colonnes à droite signifient ce qui suit :
- Emplacements d’instruction : nombre d’emplacements d’instruction utilisés par chaque instruction.
- Configuration - Instructions non arithmétiques. Chaque nuanceur doit avoir une instruction de version et il doit s’agir de la première instruction.
- Arithmétique : ces instructions fournissent les opérations mathématiques dans un nuanceur.
- Texture : ces instructions prennent en charge la recherche d’adresse de texture.
- Contrôle de flux : ces instructions ajoutent un contrôle de flux, comme des boucles, des répétitions et si bool - vs... sinon... comparaisons endif .
- Nouveau : ces instructions sont des nouveautés de cette version.
Jeu d'instructions
Name | Description | Emplacements d’instruction | Programme d’installation | Arithmétique | Texture | Contrôle de flux | Nouveau |
---|---|---|---|---|---|---|---|
abs - vs | Valeur absolue | 1 | x | ||||
add - vs | Ajouter deux vecteurs | 1 | x | ||||
break - vs | Sortir d’une boucle - vs... endloop - vs ou rep... bloc endrep | 1 | x | ||||
break_comp - vs | Sortir conditionnellement d’une boucle - vs... endloop - vs ou rep... bloc endrep , avec une comparaison | 3 | x | ||||
breakp - vs | Sortir d’une boucle - vs... endloop - vs ou rep... bloc endrep , basé sur un prédicat | 3 | x | ||||
call - vs | Appeler une sous-routine | 2 | x | ||||
callnz bool - vs | Appeler une sous-routine si un registre booléen n’est pas égal à zéro | 3 | x | ||||
callnz pred - vs | Appeler une sous-routine si un registre de prédicat n’est pas zéro | 3 | x | ||||
crs - vs | Produit croisé | 2 | x | ||||
dcl_usage entrée (sm1, sm2, sm3 - vs asm) | Déclarer des registres de vertex d’entrée (voir Registres - vs_3_0) | 0 | x | ||||
dcl_samplerType (sm3 - vs asm) | Déclarer la dimension de texture d’un échantillonneur | 0 | x | x | |||
def - vs | Définir des constantes | 0 | x | ||||
defb - vs | Déclarer une constante booléenne | 0 | x | ||||
defi - vs | Déclarer une constante entière | 0 | x | ||||
dp3 - vs | Produit à points à trois composants | 1 | x | ||||
dp4 - vs | Produit à points à quatre composants | 1 | x | ||||
dst - vs | Distance | 1 | x | ||||
else - vs | Commencer un bloc Else | 1 | x | ||||
endif - vs | Terminer un si bool - vs... else block | 1 | x | ||||
endloop - vs | Fin d’une boucle - vs bloc | 2 | x | ||||
endrep - vs | Fin d’un bloc de répétition | 2 | x | ||||
exp - vs | Précision totale 2x | 1 | x | ||||
expp - vs | Précision partielle 2x | 1 | x | ||||
frc - vs | Composant fractionnaire | 1 | x | ||||
if bool - vs | Commencer un if bool - vs block (à l’aide d’une condition booléenne) | 3 | x | ||||
if_comp - vs | Commencez un if bool - vs block, avec une comparaison | 3 | x | ||||
si pred - vs | Commencer un if bool - vs block avec une condition de prédicat | 3 | x | ||||
label - vs | Étiquette | 0 | x | ||||
lit - vs | Calculer l’éclairage | 3 | x | ||||
log - vs | Journal de précision complète(x) | 1 | x | ||||
logp - vs | Journal de précision partielle(x) | 1 | x | ||||
loop - vs | Loop | 3 | x | ||||
lrp - vs | Interpolation linéaire | 2 | x | ||||
m3x2 - vs | Multiplier 3x2 | 2 | x | ||||
m3x3 - vs | Multiplier 3x3 | 3 | x | ||||
m3x4 - vs | Multiplier 3x4 | 4 | x | ||||
m4x3 - vs | Multiplier 4x3 | 3 | x | ||||
m4x4 - vs | Multiplication 4x4 | 4 | x | ||||
mad - vs | Multiplier et ajouter | 1 | x | ||||
max - vs | Maximum | 1 | x | ||||
min - vs | Minimum | 1 | x | ||||
mov - vs | Déplacer | 1 | x | ||||
mova - vs | Déplacer des données d’un registre à virgule flottante vers un registre d’entiers | 1 | x | ||||
mul - vs | Multiplier | 1 | x | ||||
nop - vs | Pas d'opération | 1 | x | ||||
nrm - vs | Normalize | 3 | x | ||||
pow - vs | xy | 3 | x | ||||
rcp - vs | Réciproque | 1 | x | ||||
rep - vs | Répéter | 3 | x | ||||
ret - vs | Fin d’une sous-routine | 1 | x | ||||
rsq - vs | Racine carrée réciproque | 1 | x | ||||
setp_comp - vs | Définir le registre du prédicat | 1 | x | ||||
sge - vs | Comparaison supérieure ou égale | 1 | x | ||||
sgn - vs | Signer | 3 | x | ||||
sincos - vs | Sinus et cosinus | 8 | x | ||||
slt - vs | Inférieur à la comparaison | 1 | x | ||||
sub - vs | Soustraire | 1 | x | ||||
texldl - vs | Charge de texture avec niveau de détail réglable par l’utilisateur | Voir la note 1 | x | x | |||
Vs | Version | 0 | x |
Remarques :
- si la texture est une carte de cube, emplacements = 5 ; sinon, emplacements = 2
Rubriques connexes
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour