Bagikan melalui


Instruksi - vs_3_0

Bagian ini berisi informasi referensi untuk instruksi vertex shader versi 3_0.

Ada beberapa jenis instruksi shader vertex, seperti yang ditunjukkan dalam tabel. Kolom di sebelah kanan berarti yang berikut ini:

  • Slot instruksi - Jumlah slot instruksi yang digunakan oleh setiap instruksi.
  • Penyiapan - Instruksi non-aritmatika. Setiap shader harus memiliki instruksi versi dan harus menjadi instruksi pertama.
  • Aritmatika - Instruksi ini menyediakan operasi matematika dalam shader.
  • Tekstur - Instruksi ini mendukung pencarian alamat tekstur.
  • Kontrol alur - Instruksi ini menambahkan kontrol alur seperti perulangan, pengulangan, dan jika bool - vs... lain... perbandingan endif .
  • Baru - Instruksi ini baru untuk versi ini.

Set Instruksi

Nama Deskripsi Slot instruksi Siapkan Aritmatika Tekstur Kontrol aliran Baru
abs - vs Nilai absolut 1 x
add - vs Menambahkan dua vektor 1 x
break - vs Keluar dari perulangan - vs... endloop - vs atau rep... blok endrep 1 x
break_comp - vs Pembobolan perulangan secara kondisional - vs... endloop - vs atau rep... blok endrep , dengan perbandingan 3 x
breakp - vs Keluar dari perulangan - vs... endloop - vs atau rep... blok endrep , berdasarkan predikat 3 x
panggilan - vs Memanggil sub-rutin 2 x
bool callnz - vs Panggil sub-rutin jika register Boolean bukan nol 3 x
callnz pred - vs Panggil sub-rutin jika register predikat bukan nol 3 x
crs - vs Produk silang 2 x
input dcl_usage (sm1, sm2, sm3 - vs asm) Mendeklarasikan register verteks input (lihat Daftar - vs_3_0) 0 x
dcl_samplerType (sm3 - vs asm) Mendeklarasikan dimensi tekstur untuk sampler 0 x x
def - vs Menentukan konstanta 0 x
defb - vs Menyatakan konstanta Boolean 0 x
defi - vs Mendeklarasikan konstanta bilangan bulat 0 x
dp3 - vs Produk titik tiga komponen 1 x
dp4 - vs Produk titik empat komponen 1 x
dst - vs Jarak 1 x
else - vs Memulai blok lain 1 x
endif - vs Akhiri jika bool - vs... blok lain 1 x
endloop - vs Akhir perulangan - vs blok 2 x
endrep - vs Akhir blok berulang 2 x
exp - vs Presisi penuh 2x 1 x
expp - vs Presisi parsial 2x 1 x
frc - vs Komponen pecahan 1 x
jika bool - vs Memulai jika bool - vs blok (menggunakan kondisi Boolean) 3 x
if_comp - vs Memulai jika bool - vs blok, dengan perbandingan 3 x
if pred - vs Memulai jika bool - vs blok dengan kondisi predikat 3 x
label - vs Label 0 x
menyala - vs Menghitung pencahayaan 3 x
log - vs Log presisi penuh₂(x) 1 x
logp - vs Log presisi parsial₂(x) 1 x
perulangan - vs Perulangan 3 x
lrp - vs Interpolasi linier 2 x
m3x2 - vs 3x2 kalikan 2 x
m3x3 - vs 3x3 kalikan 3 x
m3x4 - vs 3x4 kalikan 4 x
m4x3 - vs 4x3 kalikan 3 x
m4x4 - vs 4x4 kalikan 4 x
mad - vs Mengalikan dan menambahkan 1 x
max - vs Maksimum 1 x
min - vs Minimum 1 x
mov - vs Move 1 x
mova - vs Memindahkan data dari register titik mengambang ke register bilangan bulat 1 x
mul - vs Pengalian 1 x
nop - vs Tidak ada operasi 1 x
nrm - vs Menormalkan 3 x
pow - vs xy 3 x
rcp - vs Timbal balik 1 x
rep - vs Ulang 3 x
ret - vs Akhir subroutine 1 x
rsq - vs Akar kuadrat timbal balik 1 x
setp_comp - vs Atur register predikat 1 x
sge - vs Perbandingan yang lebih besar dari atau sama dengan 1 x
sgn - vs Menandatangani 3 x
sincos - vs Sinus dan kosinus 8 x
slt - vs Kurang dari perbandingan 1 x
sub - vs Pengurangan 1 x
texldl - vs Beban tekstur dengan tingkat detail yang dapat disesuaikan pengguna Lihat catatan 1 x x
Vs Versi 0 x

 

Catatan:

  • jika teksturnya adalah peta kubus, slot = 5; jika tidak, slot = 2

Instruksi Vertex Shader