Instruksi ps_3_0
Bagian ini berisi informasi referensi untuk instruksi pixel shader versi 3_0.
Ada beberapa jenis instruksi shader piksel, seperti yang ditunjukkan dalam tabel. Kolom di sebelah kanan berarti yang berikut ini:
- Slot instruksi - Jumlah slot instruksi yang digunakan oleh setiap instruksi.
- Penyiapan - Shader piksel harus memiliki instruksi versi dan harus merupakan instruksi pertama.
- Aritmatika - Instruksi ini menyediakan operasi matematika dalam shader.
- Tekstur - Instruksi ini digunakan untuk memuat dan mengambil sampel data tekstur, dan untuk memodifikasi koordinat tekstur.
- Kontrol alur - Instruksi ini memberikan kontrol aliran statis dan dinamis ke eksekusi instruksi.
- Baru - Instruksi ini baru untuk versi ini.
Set Instruksi
Nama | Deskripsi | Slot instruksi | Siapkan | Aritmatika | Tekstur | Kontrol aliran | Baru |
---|---|---|---|---|---|---|---|
abs - ps | Nilai absolut | 1 | x | ||||
add - ps | Menambahkan dua vektor | 1 | x | ||||
break - ps | Keluar dari perulangan... endloop atau rep... blok endrep | 1 | x | ||||
break_comp - ps | Pembobolan kondisional dari perulangan... endloop atau rep... blok endrep, dengan perbandingan | 3 | x | ||||
breakp - ps | keluar dari perulangan... endloop atau rep... blok endrep, berdasarkan predikat | 3 | x | ||||
call - ps | Memanggil subroutine | 2 | x | ||||
callnz bool - ps | Panggil subroutine jika register boolean bukan nol | 3 | x | ||||
callnz pred - ps | Panggil subroutine jika register predikat bukan nol | 3 | x | ||||
cmp - ps | Membandingkan sumber dengan 0 | 1 | x | ||||
crs - ps | Produk silang | 2 | x | ||||
dcl_samplerType (sm2, sm3 - ps asm) | Mendeklarasikan dimensi tekstur untuk sampler | 0 | x | ||||
dcl_semantics (sm3 - ps asm) | Mendeklarasikan register input dan output | 0 | x | x | |||
def - ps | Menentukan konstanta | 0 | x | ||||
defb - ps | Menentukan konstanta Boolean | 0 | x | ||||
defi - ps | Menentukan konstanta bilangan bulat | 0 | x | ||||
dp2add - ps | Produk titik 2D dan tambahkan | 2 | x | ||||
dp3 - ps | Produk titik 3D | 1 | x | ||||
dp4 - ps | Produk titik 4D | 1 | x | ||||
dsx - ps | Laju perubahan dalam arah x | 2 | x | ||||
dsy - ps | Laju perubahan ke arah y | 2 | x | ||||
else - ps | Mulai blok lain | 1 | x | ||||
endif - ps | Akhiri jika... blok lain | 1 | x | ||||
endloop - ps | Mengakhiri perulangan | 2 | x | x | |||
endrep - ps | Akhir blok berulang | 2 | x | ||||
exp - ps | Presisi penuh 2x | 1 | x | ||||
frc - ps | Komponen pecahan | 1 | x | ||||
if bool - ps | Memulai blok if | 3 | x | ||||
if_comp - ps | Memulai blok if dengan perbandingan | 3 | x | ||||
if pred - ps | Memulai blok if dengan predikasi | 3 | x | ||||
label - ps | Label | 0 | x | ||||
log - ps | Log presisi penuhâ‚‚(x) | 1 | x | ||||
loop - ps | Perulangan | 3 | x | x | |||
lrp - ps | Interpolasi linier | 2 | x | ||||
m3x2 - ps | 3x2 kalikan | 2 | x | ||||
m3x3 - ps | 3x3 kalikan | 3 | x | ||||
m3x4 - ps | 3x4 kalikan | 4 | x | ||||
m4x3 - ps | 4x3 kalikan | 3 | x | ||||
m4x4 - ps | 4x4 kalikan | 4 | x | ||||
mad - ps | Mengalikan dan menambahkan | 1 | x | ||||
max - ps | Maksimum | 1 | x | ||||
min - ps | Minimum | 1 | x | ||||
mov - ps | Move | 1 | x | ||||
mul - ps | Pengalian | 1 | x | ||||
nop - ps | Tidak ada operasi | 1 | x | ||||
nrm - ps | Menormalkan | 3 | x | ||||
pow - ps | xy | 3 | x | ||||
Mazmur | Versi | 0 | x | ||||
rcp - ps | Timbal balik | 1 | x | ||||
rep - ps | Ulang | 3 | x | ||||
ret - ps | Akhir subroutine | 1 | x | ||||
rsq - ps | Akar kuadrat timbal balik | 1 | x | ||||
setp_comp | Atur register predikat | 1 | x | ||||
sincos - ps | Sinus dan kosinus | 8 | x | ||||
sub - ps | Pengurangan | 1 | x | ||||
texkill - ps | Mematikan render piksel | 2 | x | ||||
texld - ps_2_0 ke atas | Contoh tekstur | Lihat catatan 1 | x | ||||
texldb - ps | Pengambilan sampel tekstur dengan bias tingkat detail dari w-component | 6 | x | ||||
texldl - ps | Pengambilan sampel tekstur dengan tingkat detail dari w-component | Lihat catatan 2 | x | x | |||
texldd - ps | Pengambilan sampel tekstur dengan gradien yang disediakan pengguna | 3 | x | ||||
texldp - ps | Pengambilan sampel tekstur dengan proyektif dibagi dengan komponen-w | Lihat catatan 3 | x |
Catatan:
- Jika teksturnya adalah peta kubus, slot = 4; jika tidak, slot = 1.
- Jika teksturnya adalah peta kubus, slot = 5; jika tidak, slot = 2.
- Jika teksturnya adalah peta kubus, slot = 4; jika tidak, slot = 3.
Topik terkait