Partager via


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 :

  1. Adresse push de l’instruction suivante à la pile d’adresses de retour.
  2. 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.

Instructions du nuanceur de vertex