fungsi glColorSubTableEXT
Fungsi glColorSubTableEXT menentukan sebagian palet tekstur yang ditargetkan untuk diganti.
Sintaks
void WINAPI glColorSubTableEXT(
GLenum target,
GLsizei start,
GLsizei count,
GLenum format,
GLenum type,
const GLvoid *data
);
Parameter
-
target
-
Tekstur palet target yang diubah paletnya. Harus TEXTURE_1D atau TEXTURE_2D.
-
start
-
Entri indeks palet awal palet yang akan diubah.
-
hitung
-
Jumlah entri indeks palet palet yang akan diubah mulai dari awal. Parameter hitungan menentukan rentang entri indeks palet yang diubah.
-
format
-
Format data piksel. Konstanta simbolis berikut diterima.
Nilai Makna - GL_RGBA
Setiap piksel adalah sekelompok empat komponen dalam urutan berikut: merah, hijau, biru, alfa. Format RGBA ditentukan dengan cara ini: - Fungsi glColorSubTableEXT mengonversi nilai floating-point langsung ke format internal dengan presisi yang tidak ditentukan. Nilai bilangan bulat yang ditandatangani dipetakan secara linear ke format internal sehingga nilai bilangan bulat yang paling positif dapat direpresentasikan memetakan ke 1,0, dan peta nilai yang paling negatif yang dapat diwakili ke -1,0. Data bilangan bulat yang tidak ditandatangani dipetakan juga: peta nilai bilangan bulat terbesar ke 1,0, dan peta nol ke 0,0.
- Fungsi glColorSubTableEXT mengalikan nilai warna yang dihasilkan dengan GL_c_SCALE dan menambahkannya ke GL_c_BIAS, di mana c adalah RED, GREEN, BLUE, dan ALPHA untuk komponen warna masing-masing. Hasilnya dijepit ke rentang [0,1].
- Jika GL_MAP_COLOR TRUE, glColorSubTableEXT menskalakan setiap komponen warna berdasarkan ukuran tabel pencarian GL_PIXEL_MAP_c_TO_c, lalu mengganti komponen dengan nilai yang dirujuknya dalam tabel tersebut; c adalah R, G, B, atau A, masing-masing.
- Fungsi glColorSubTableEXT mengonversi warna RGBA yang dihasilkan menjadi fragmen dengan melampirkan koordinat z-coordinate dan tekstur posisi raster saat ini ke setiap piksel, lalu menetapkan koordinat jendela x dan y ke fragmen nth sedinix?
=
xr + nlebar mod
y? = yr +n / lebar
di mana (xr , yr ) adalah posisi raster saat ini. - Fragmen piksel ini kemudian diperlakukan seperti fragmen yang dihasilkan oleh titik rasterisasi, garis, atau poligon. Fungsi glColorSubTableEXT menerapkan pemetaan tekstur, kabut, dan semua operasi fragmen sebelum menulis fragmen ke framebuffer.
- GL_RED
Setiap piksel adalah komponen merah tunggal.
Fungsi glColorSubTableEXT mengonversi komponen ini ke format internal dengan cara yang sama seperti komponen merah piksel RGBA, lalu mengonversinya menjadi piksel RGBA dengan hijau dan biru diatur ke 0,0, dan alfa diatur ke 1,0. Setelah konversi ini, piksel diperlakukan seolah-olah telah dibaca sebagai piksel RGBA.- GL_GREEN
Setiap piksel adalah komponen hijau tunggal.
Fungsi glColorSubTableEXT mengonversi komponen ini ke format internal dengan cara yang sama seperti komponen hijau piksel RGBA, lalu mengonversinya menjadi piksel RGBA dengan merah dan biru diatur ke 0,0, dan alfa diatur ke 1,0. Setelah konversi ini, piksel diperlakukan seolah-olah telah dibaca sebagai piksel RGBA.- GL_BLUE
Setiap piksel adalah komponen biru tunggal.
Fungsi glColorSubTableEXT mengonversi komponen ini ke format internal dengan cara yang sama seperti komponen biru piksel RGBA, lalu mengonversinya menjadi piksel RGBA dengan merah dan hijau diatur ke 0,0, dan alfa diatur ke 1,0. Setelah konversi ini, piksel diperlakukan seolah-olah telah dibaca sebagai piksel RGBA.- GL_ALPHA
Setiap piksel adalah komponen alfa tunggal.
Fungsi glColorSubTableEXT mengonversi komponen ini ke format internal dengan cara yang sama seperti komponen alfa piksel RGBA, lalu mengonversinya menjadi piksel RGBA dengan merah, hijau, dan biru diatur ke 0,0. Setelah konversi ini, piksel diperlakukan seolah-olah telah dibaca sebagai piksel RGBA.- GL_RGB
Setiap piksel adalah sekelompok tiga komponen dalam urutan ini: merah, hijau, biru.
Fungsi glColorSubTableEXT mengonversi setiap komponen ke format internal dengan cara yang sama seperti komponen merah, hijau, dan biru dari piksel RGBA. Tiga warna dikonversi menjadi piksel RGBA dengan alfa diatur ke 1.0. Setelah konversi ini, piksel diperlakukan seolah-olah telah dibaca sebagai piksel RGBA.- GL_BGR_EXT
Setiap piksel adalah sekelompok tiga komponen dalam urutan ini: biru, hijau, merah.
GL_BGR_EXT menyediakan format yang cocok dengan tata letak memori bitmap independen perangkat Windows (DIB). Dengan demikian aplikasi Anda dapat menggunakan data yang sama dengan panggilan fungsi Windows dan panggilan fungsi piksel OpenGL.- GL_BGRA_EXT
Setiap piksel adalah sekelompok empat komponen dalam urutan ini: biru, hijau, merah, alfa.
GL_BGRA_EXT menyediakan format yang cocok dengan tata letak memori bitmap independen perangkat Windows (DIB). Dengan demikian aplikasi Anda dapat menggunakan data yang sama dengan panggilan fungsi Windows dan panggilan fungsi piksel OpenGL. -
jenis
-
Jenis data untuk data. Konstanta simbolis berikut diterima: GL_UNSIGNED_BYTE, GL_BYTE, GL_UNSIGNED_SHORT, GL_SHORT, GL_UNSIGNED_INT, GL_INT, dan GL_FLOAT.
Tabel berikut ini meringkas arti konstanta yang valid untuk parameter jenis .
Nilai Makna - GL_UNSIGNED_BYTE
Integer 8-bit yang tidak ditandai - GL_BYTE
Integer 8-bit yang ditandai - GL_UNSIGNED_SHORT
Integer 16-bit yang tidak ditandai - GL_SHORT
Integer 16-bit yang ditandai - GL_UNSIGNED_INT
Integer 32-bit yang tidak ditandai - GL_INT
bilangan bulat 32-bit - GL_FLOAT
Nilai floating-point presisi tunggal -
data
-
Penunjuk ke data tekstur palet. Data diperlakukan sebagai piksel tunggal dari entri palet tekstur 1-D untuk entri palet.
Nilai kembali
Fungsi ini tidak mengembalikan nilai.
Kode kesalahan
Kode kesalahan berikut dapat diambil oleh fungsi glGetError .
Nama | Makna |
---|---|
|
awal atau hitungan adalah bilangan bulat yang tidak valid. |
|
target, format, atau jenis bukan nilai yang diterima. |
|
Fungsi ini dipanggil antara panggilan ke glBegin dan panggilan yang sesuai ke glEnd. |
Keterangan
Fungsi glColorSubTableEXT menentukan bagian dari palet tekstur yang ditargetkan saat ini untuk diganti. Tidak seperti glColorTableEXT, Anda tidak dapat menentukan parameter target untuk menjadi palet tekstur proksi.
Catatan
Fungsi glColorSubTableEXT adalah fungsi ekstensi yang bukan bagian dari pustaka OpenGL standar tetapi merupakan bagian dari ekstensi GL_EXT_paletted_texture. Untuk memeriksa apakah implementasi OpenGL Anda mendukung glColorSubTableEXT, panggil glGetString(GL_EXTENSIONS). Jika mengembalikan GL_EXT_paletted_texture, glColorSubTableEXT didukung. Untuk mendapatkan alamat fungsi fungsi ekstensi, panggil wglGetProcAddress.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung |
Windows 2000 Professional [hanya aplikasi desktop] |
Server minimum yang didukung |
Windows 2000 Server [hanya aplikasi desktop] |
Header |
|