call - vs
Effectue un appel de fonction à l’instruction marquée avec l’étiquette fournie.
Syntaxe
appeler l # |
---|
où l# est une étiquette - par opposition au début de la sous-routine à appeler.
Notes
Versions du nuanceur de vertex | 1_1 | 2_0 | 2_x | 2_sw | 3_0 | 3_sw |
---|---|---|---|---|---|---|
appel | x | x | x | x | x |
Cette instruction effectue les opérations suivantes :
- Adresse push de l’instruction suivante à la pile d’adresses de retour.
- Poursuivez l’exécution à partir de l’instruction marquée par l’étiquette.
Dans le nuanceur de vertex 2_0, les appels d’imbrication ne sont pas autorisés.
Dans le nuanceur de vertex 2_x, la profondeur d’imbrication est limitée par l’élément StaticFlowControlDepth de la structure D3DVSHADERCAPS2_0 . Pour plus d’informations, consultez GetDeviceCaps.
Dans le nuanceur de vertex 3_0, quatre niveaux d’imbrication d’appels sont autorisés.
Seuls les appels de transfert sont autorisés. Cela signifie que l’emplacement de l’étiquette à l’intérieur du nuanceur de vertex doit se trouver après l’instruction d’appel qui la référence.
Si une instruction d’appel est appelée à l’intérieur de la boucle... bloc endloop , la valeur du registre du compteur de boucles (aL) est accessible à l’intérieur de la sous-routine.
Si une sous-routine fait référence au registre du compteur de boucles (aL) situé en dehors de la sous-routine, chaque instance de l’appel à cette sous-routine doit être entouré d’une boucle... bloc endloop.
Rubriques connexes