enumerasi D3DTEXTURESTAGESTATETYPE

Status tahap tekstur menentukan operasi tekstur multi-blender. Beberapa status sampler menyiapkan pemrosesan vertex, dan beberapa menyiapkan pemrosesan piksel. Status tahap tekstur dapat disimpan dan dipulihkan menggunakan stateblock (lihat Status Blok Status Simpan dan Pulihkan Status (Direct3D 9)).

Sintaks

typedef enum D3DTEXTURESTAGESTATETYPE { 
  D3DTSS_COLOROP                = 1,
  D3DTSS_COLORARG1              = 2,
  D3DTSS_COLORARG2              = 3,
  D3DTSS_ALPHAOP                = 4,
  D3DTSS_ALPHAARG1              = 5,
  D3DTSS_ALPHAARG2              = 6,
  D3DTSS_BUMPENVMAT00           = 7,
  D3DTSS_BUMPENVMAT01           = 8,
  D3DTSS_BUMPENVMAT10           = 9,
  D3DTSS_BUMPENVMAT11           = 10,
  D3DTSS_TEXCOORDINDEX          = 11,
  D3DTSS_BUMPENVLSCALE          = 22,
  D3DTSS_BUMPENVLOFFSET         = 23,
  D3DTSS_TEXTURETRANSFORMFLAGS  = 24,
  D3DTSS_COLORARG0              = 26,
  D3DTSS_ALPHAARG0              = 27,
  D3DTSS_RESULTARG              = 28,
  D3DTSS_CONSTANT               = 32,
  D3DTSS_FORCE_DWORD            = 0x7fffffff
} D3DTEXTURESTAGESTATETYPE, *LPD3DTEXTURESTAGESTATETYPE;

Konstanta

D3DTSS_COLOROP

Status tahap tekstur adalah operasi perpaduan warna tekstur yang diidentifikasi oleh satu anggota jenis enumerasi D3DTEXTUREOP. Nilai default untuk tahap tekstur pertama (tahap 0) adalah D3DTOP_MODULATE; untuk semua tahap lainnya, defaultnya adalah D3DTOP_DISABLE.

D3DTSS_COLORARG1

Status tahap tekstur adalah argumen warna pertama untuk panggung, yang diidentifikasi oleh salah satu D3DTA. Argumen default adalah D3DTA_TEXTURE.

Tentukan D3DTA_TEMP untuk memilih warna register sementara untuk baca atau tulis. D3DTA_TEMP didukung jika kemampuan perangkat D3DPMISCCAPS_TSSARGTEMP ada. Nilai default untuk register adalah (0.0, 0.0, 0.0, 0.0).

D3DTSS_COLORARG2

Status tahap tekstur adalah argumen warna kedua untuk tahap tersebut, yang diidentifikasi oleh D3DTA. Argumen default adalah D3DTA_CURRENT. Tentukan D3DTA_TEMP untuk memilih warna register sementara untuk baca atau tulis. D3DTA_TEMP didukung jika kemampuan perangkat D3DPMISCCAPS_TSSARGTEMP ada. Nilai default untuk register adalah (0,0, 0,0, 0,0, 0,0)

D3DTSS_ALPHAOP

Status tahap tekstur adalah operasi pencambukan alfa tekstur yang diidentifikasi oleh satu anggota jenis enumerasi D3DTEXTUREOP. Nilai default untuk tahap tekstur pertama (tahap 0) adalah D3DTOP_SELECTARG1, dan untuk semua tahap lainnya, defaultnya adalah D3DTOP_DISABLE.

D3DTSS_ALPHAARG1

Status tahap tekstur adalah argumen alfa pertama untuk tahap tersebut, yang diidentifikasi oleh D3DTA. Argumen default adalah D3DTA_TEXTURE. Jika tidak ada tekstur yang diatur untuk tahap ini, argumen default adalah D3DTA_DIFFUSE. Tentukan D3DTA_TEMP untuk memilih warna register sementara untuk baca atau tulis. D3DTA_TEMP didukung jika kemampuan perangkat D3DPMISCCAPS_TSSARGTEMP ada. Nilai default untuk register adalah (0.0, 0.0, 0.0, 0.0).

D3DTSS_ALPHAARG2

Status tahap tekstur adalah argumen alfa kedua untuk tahap tersebut, yang diidentifikasi oleh D3DTA. Argumen default adalah D3DTA_CURRENT. Tentukan D3DTA_TEMP untuk memilih warna register sementara untuk baca atau tulis. D3DTA_TEMP didukung jika kemampuan perangkat D3DPMISCCAPS_TSSARGTEMP ada. Nilai default untuk register adalah (0.0, 0.0, 0.0, 0.0).

D3DTSS_BUMPENVMAT00

Status tahap tekstur adalah nilai floating-point untuk koefisien [0][0] dalam matriks pemetaan benjolan. Nilai defaultnya adalah 0,0.

D3DTSS_BUMPENVMAT01

Status tahap tekstur adalah nilai floating-point untuk koefisien [0][1] dalam matriks pemetaan benjolan. Nilai defaultnya adalah 0,0.

D3DTSS_BUMPENVMAT10

Status tahap tekstur adalah nilai floating-point untuk koefisien [1][0] dalam matriks pemetaan benjolan. Nilai defaultnya adalah 0,0.

D3DTSS_BUMPENVMAT11

Status tahap tekstur adalah nilai floating-point untuk koefisien [1][1] dalam matriks pemetaan benjolan. Nilai defaultnya adalah 0,0.

D3DTSS_TEXCOORDINDEX

Indeks koordinat tekstur diatur untuk digunakan dengan tahap tekstur ini. Anda dapat menentukan hingga delapan set koordinat tekstur per puncak. Jika vertex tidak menyertakan sekumpulan koordinat tekstur pada indeks yang ditentukan, sistem default ke koordinat Anda dan v (0,0).

Saat merender menggunakan shader vertex, indeks koordinat tekstur setiap tahap harus diatur ke nilai defaultnya. Indeks default untuk setiap tahap sama dengan indeks tahap. Atur status ini ke indeks berbasis nol dari kumpulan koordinat untuk setiap puncak yang digunakan tahap tekstur ini.

Selain itu, aplikasi dapat mencakup, sebagai LOGIS ATAU dengan indeks yang diatur, salah satu konstanta untuk meminta agar Direct3D secara otomatis menghasilkan koordinat tekstur input untuk transformasi tekstur. Untuk daftar semua konstanta, lihat D3DTSS_TCI.

Dengan pengecualian D3DTSS_TCI_PASSTHRU, yang menetapkan ke nol, jika salah satu nilai berikut disertakan dengan indeks yang diatur, sistem menggunakan indeks secara ketat untuk menentukan mode pembungkusan tekstur. Bendera ini paling berguna saat melakukan pemetaan lingkungan.

D3DTSS_BUMPENVLSCALE

Nilai skala floating-point untuk luminance peta benjolan. Nilai defaultnya adalah 0,0.

D3DTSS_BUMPENVLOFFSET

Nilai offset floating-point untuk luminance benjolan-peta. Nilai defaultnya adalah 0,0.

D3DTSS_TEXTURETRANSFORMFLAGS

Anggota jenis enumerasi D3DTEXTURETRANSFORMFLAGS yang mengontrol transformasi koordinat tekstur untuk tahap tekstur ini. Nilai defaultnya adalah D3DTTFF_DISABLE.

D3DTSS_COLORARG0

Pengaturan untuk operan warna ketiga untuk operasi triadic (kalikan, tambahkan, dan interpolasi linier), diidentifikasi oleh D3DTA. Pengaturan ini didukung jika kemampuan perangkat D3DTEXOPCAPS_MULTIPLYADD atau D3DTEXOPCAPS_LERP ada. Argumen default adalah D3DTA_CURRENT. Tentukan D3DTA_TEMP untuk memilih warna register sementara untuk baca atau tulis. D3DTA_TEMP didukung jika kemampuan perangkat D3DPMISCCAPS_TSSARGTEMP ada. Nilai default untuk register adalah (0.0, 0.0, 0.0, 0.0).

D3DTSS_ALPHAARG0

Pengaturan untuk operand pemilih saluran alfa untuk operasi triadic (kalikan, tambahkan, dan interpolasi linier), diidentifikasi oleh D3DTA. Pengaturan ini didukung jika kemampuan perangkat D3DTEXOPCAPS_MULTIPLYADD atau D3DTEXOPCAPS_LERP ada. Argumen default adalah D3DTA_CURRENT. Tentukan D3DTA_TEMP untuk memilih warna register sementara untuk baca atau tulis. D3DTA_TEMP didukung jika kemampuan perangkat D3DPMISCCAPS_TSSARGTEMP ada. Argumen default adalah (0.0, 0.0, 0.0, 0.0).

D3DTSS_RESULTARG

Pengaturan untuk memilih register tujuan untuk hasil tahap ini, diidentifikasi oleh D3DTA. Nilai ini dapat diatur ke D3DTA_CURRENT (nilai default) atau ke D3DTA_TEMP, yang merupakan register sementara tunggal yang dapat dibaca ke tahap berikutnya sebagai argumen input. Warna akhir yang diteruskan ke blender kabut dan buffer bingkai diambil dari D3DTA_CURRENT, sehingga status tahap tekstur aktif terakhir harus diatur untuk menulis ke saat ini. Pengaturan ini didukung jika kemampuan perangkat D3DPMISCCAPS_TSSARGTEMP ada.

D3DTSS_CONSTANT

Warna konstanta per tahap. Untuk melihat apakah perangkat mendukung warna konstanta per tahap, lihat konstanta D3DPMISCCAPS_PERSTAGECONSTANT dalam D3DPMISCCAPS. D3DTSS_CONSTANT digunakan oleh D3DTA_CONSTANT. Lihat D3DTA.

D3DTSS_FORCE_DWORD

Memaksa enumerasi ini untuk mengkompilasi ke ukuran 32 bit. Tanpa nilai ini, beberapa kompilator akan memungkinkan enumerasi ini untuk dikompilasi ke ukuran selain 32 bit. Nilai ini tidak digunakan.

Keterangan

Anggota jenis enumerasi ini digunakan dengan metode IDirect3DDevice9::GetTextureStageState dan IDirect3DDevice9::SetTextureStageState untuk mengambil dan mengatur nilai status tekstur.

Rentang nilai yang valid untuk koefisien matriks pemetaan benjolan D3DTSS_BUMPENVMAT00, D3DTSS_BUMPENVMAT01, D3DTSS_BUMPENVMAT10, dan D3DTSS_BUMPENVMAT11 lebih besar dari atau sama dengan -8,0 dan kurang dari 8,0. Rentang ini, yang dinyatakan dalam notasi matematika adalah (-8.0,8.0).

Persyaratan

Persyaratan Nilai
Header
D3D9Types.h

Baca juga

Enumerasi Direct3D

IDirect3DDevice9::GetTextureStageState

IDirect3DDevice9::SetTextureStageState