Bagikan melalui


panggilan - vs

Melakukan panggilan fungsi ke instruksi yang ditandai dengan label yang disediakan.

Sintaks

panggil l #

 

where l# adalah label - vs menandai awal sub-rutin yang akan dipanggil.

Keterangan

Versi shader vertex 1_1 2_0 2_x 2_sw 3_0 3_sw
Panggilan x x x x x

 

Instruksi ini melakukan hal berikut:

  1. Dorong alamat instruksi berikutnya ke tumpukan alamat pengembalian.
  2. Lanjutkan eksekusi dari instruksi yang ditandai oleh label.

Di vertex shader 2_0, panggilan bersarang tidak diizinkan.

Dalam 2_x shader puncak, kedalaman bersarang dibatasi oleh elemen StaticFlowControlDepth dari struktur D3DVSHADERCAPS2_0 . Untuk informasi selengkapnya, lihat GetDeviceCaps.

Dalam vertex shader 3_0, empat tingkat sarang panggilan diizinkan.

Hanya panggilan pengalihan yang diizinkan. Ini berarti bahwa lokasi label di dalam shader puncak harus setelah instruksi panggilan mereferensikannya.

Jika instruksi panggilan dipanggil di dalam perulangan... blok endloop , nilai Loop Counter Register (aL) dapat diakses di dalam subroutine.

Jika sub-rutin mereferensikan Loop Counter Register (aL) yang terletak di luar subroutine, setiap instans panggilan ke subroutine ini harus dikelilingi oleh perulangan... blok endloop.

Instruksi Vertex Shader