Bagikan melalui


fungsi glCopyTexSubImage1D

Fungsi glCopyTexSubImage1D menyalin sub-gambar gambar tekstur satu dimensi dari framebuffer.

Sintaks

void WINAPI glCopyTexSubImage1D(
   GLenum  target,
   GLint   level,
   GLint   xoffset,
   GLint   x,
   GLint   y,
   GLsizei width
);

Parameter

target

Target tempat data gambar akan diubah. Harus memiliki nilai GL_TEXTURE_1D.

tingkat

Nomor tingkat detail. Tingkat 0 adalah gambar dasar. Level n adalah gambar pengurangan mipmap ke-n.

xoffset

Offset texel dalam array tekstur.

x

Koordinat x-plane jendela sudut kiri bawah baris piksel yang akan disalin.

y

Koordinat bidang-y jendela dari sudut kiri bawah baris piksel yang akan disalin.

width

Lebar sub-gambar gambar tekstur. Menentukan sub-gambar tekstur dengan lebar nol tidak berpengaruh.

Menampilkan nilai

Fungsi ini tidak mengembalikan nilai.

Kode kesalahan

Kode kesalahan berikut dapat diambil oleh fungsi glGetError .

Nama Makna
GL_INVALID_ENUM
target bukan nilai yang diterima.
GL_INVALID_VALUE
tingkat kurang dari nol atau tingkat lebih besar dari log2(maks), di mana maks adalah nilai yang dikembalikan dari GL_MAX_TEXTURE_SIZE.
GL_INVALID_VALUE
xoffset kurang dari batas atau (lebarxoffset + )lebih besar dari (batas w + ), di mana w adalah GL_TEXTURE_WIDTH dan batas GL_TEXTURE_BORDER. Perhatikan bahwa w menyertakan dua kali lebar batas .
GL_INVALID_VALUE
lebar kurang dari batas atau y kurang dari batas, di mana batas adalah lebar batas array tekstur.
GL_INVALID_OPERATION
Array tekstur tidak ditentukan oleh operasi glTexImage1D sebelumnya.
GL_INVALID_OPERATION
Fungsi ini dipanggil antara panggilan ke glBegin dan panggilan yang sesuai ke glEnd.

Keterangan

Fungsi glCopyTexSubImage1D menggantikan sebagian gambar tekstur satu dimensi menggunakan piksel dari framebuffer saat ini, bukan dari memori utama seperti halnya glTexSubImage1D.

Baris piksel yang dimulai dengan koordinat jendela yang ditentukan oleh x dan y dan dengan lebar panjang menggantikan bagian array tekstur dengan indeks xoffset melalui xoffset + (lebar - 1). Tujuan dalam array tekstur tidak dapat menyertakan texel apa pun di luar array tekstur yang awalnya ditentukan.

Fungsi glCopyTexSubImage1D memproses piksel dalam baris dengan cara yang sama seperti glCopyPixels kecuali bahwa sebelum konversi akhir piksel, semua nilai komponen piksel dijepit ke rentang [0,1] dan dikonversi ke format internal tekstur untuk penyimpanan dalam array tekstur. Pengurutan piksel ditentukan dengan koordinat x yang lebih rendah yang sesuai dengan koordinat tekstur yang lebih rendah. Jika salah satu piksel dalam baris tertentu dari framebuffer saat ini berada di luar jendela yang terkait dengan konteks penyajian saat ini, maka nilainya tidak terdefinisi.

Tidak ada perubahan yang dilakukan pada parameter internalFormat, lebar, atau batas array tekstur yang ditentukan atau ke nilai texel di luar sub-gambar tekstur yang ditentukan.

Anda tidak dapat menyertakan panggilan ke glCopyTexSubImage1D dalam daftar tampilan.

Catatan

Fungsi glCopyTexSubImage1D hanya tersedia di OpenGL versi 1.1 atau yang lebih baru.

Pengteksan tidak berpengaruh dalam mode indeks warna. Fungsi glPixelStore dan glPixelTransfer memengaruhi gambar tekstur dengan cara yang tepat mempengaruhi cara piksel digambar menggunakan glDrawPixels.

Fungsi berikut mengambil informasi yang terkait dengan glCopyTexSubImage1D:

glGetTexImage

glIsEnabled dengan argumen GL_TEXTURE_1D

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung
Windows 2000 Professional [hanya aplikasi desktop]
Server minimum yang didukung
Windows 2000 Server [hanya aplikasi desktop]
Header
Gl.h
Pustaka
Opengl32.lib
DLL
Opengl32.dll

Lihat juga

glBegin

glCopyTexSubImage2D

glDrawPixels

glEnd

glFog

glPixelStore

glPixelTransfer

glTexEnv

glTexGen

glTexImage1D

glTexImage2D

glTexSubImage1D

glTexSubImage2D

glTexParameter