Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Führt einen Funktionsaufruf der Anweisung aus, die mit der angegebenen Bezeichnung gekennzeichnet ist.
Syntax
| call l # |
|---|
Wobei l# eine Bezeichnung ist, im Vergleich zum Markieren des Anfangs der aufgerufenen Unterroutine.
Bemerkungen
| Vertexshaderversionen | 1_1 | 2_0 | 2_x | 2_sw | 3_0 | 3_sw |
|---|---|---|---|---|---|---|
| Aufruf | x | x | x | x | x |
Mit dieser Anweisung wird Folgendes ausgeführt:
- Pushadresse der nächsten Anweisung in den Rückgabeadressstapel.
- Setzen Sie die Ausführung über die Anweisung fort, die durch die Bezeichnung gekennzeichnet ist.
In Vertex shader 2_0 sind Schachtelungsaufrufe nicht zulässig.
In vertex shader 2_x wird die Schachtelungstiefe durch das StaticFlowControlDepth-Element der D3DVSHADERCAPS2_0-Struktur beschränkt. Weitere Informationen finden Sie unter GetDeviceCaps.
Im Vertex-Shader 3_0 sind vier Ebenen der Aufrufschachtelung zulässig.
Nur Weiterleitungsanrufe sind zulässig. Dies bedeutet, dass die Position der Bezeichnung innerhalb des Vertexshaders nach der Aufrufanweisung sein sollte, die darauf verweist.
Wenn eine Aufrufanweisung innerhalb der Schleife aufgerufen wird... Endloop-Block , der Wert des Schleifenzählerregisters (aL) ist innerhalb der Unterroutine zugänglich.
Wenn eine Unterroutine auf das Schleifenzählerregister (aL) verweist, das sich außerhalb der Unterroutine befindet, sollte jede instance des Aufrufs dieser Subroutine von einer Schleife umgeben sein... Endloop-Block.
Zugehörige Themen