glInterleavedArrays (Fungsi glInterleavedArrays)
Fungsi glInterleavedArrays secara bersamaan menentukan dan memungkinkan beberapa array yang saling terkait dalam array agregat yang lebih besar.
Sintaks
void WINAPI glInterleavedArrays(
GLenum format,
GLsizei stride,
const GLvoid *pointer
);
Parameter
-
format
-
Jenis array yang akan diaktifkan. Parameter dapat mengasumsikan salah satu nilai simbolis berikut: GL_V2F, GL_V3F, GL_C4UB_V2F, GL_C4UB_V3F, GL_C3F_V3F, GL_N3F_V3F, GL_C4F_N3F_V3F, GL_T2F_V3F, GL_T4F_V4F, GL_T2F_C4UB_V3F, GL_T2F_C3F_V3F, GL_T2F_N3F_V3F, GL_T2F_C4F_N3F_V3F, atau GL_T4F_C4F_N3F_V4F.
-
Langkahnya
-
Offset dalam byte di antara setiap elemen array agregat.
-
Pointer
-
Penunjuk ke elemen pertama dari array agregat.
Mengembalikan nilai
Fungsi ini tidak mengembalikan nilai.
Kode kesalahan
Kode kesalahan berikut dapat diambil oleh fungsi glGetError .
Nama | Makna |
---|---|
|
format bukan nilai yang diterima. |
|
stride adalah nilai negatif. |
|
Fungsi ini dipanggil antara panggilan ke glBegin dan panggilan yang sesuai ke glEnd. |
Keterangan
Dengan fungsi glInterleavedArrays , Anda dapat secara bersamaan menentukan dan mengaktifkan beberapa array warna, normal, tekstur, dan vertex yang elemennya merupakan bagian dari elemen array agregat yang lebih besar. Untuk beberapa arsitektur memori, ini lebih efisien daripada menentukan array secara terpisah.
Jika parameter stride adalah nol, maka elemen array agregat disimpan secara berturut-turut; jika tidak , langkah byte terjadi antara elemen array agregat.
Parameter format berfungsi sebagai kunci yang menjelaskan cara mengekstrak array individual dari array agregat:
- Jika format berisi T, maka koordinat tekstur diekstrak dari array yang diselingi.
- Jika C ada, nilai warna akan diekstrak.
- Jika N ada, koordinat normal akan diekstrak.
- Koordinat puncak selalu diekstrak.
- Digit 2, 3, dan 4 menunjukkan berapa banyak nilai yang diekstrak.
- F menunjukkan bahwa nilai diekstrak sebagai nilai titik mengambang.
- Jika 4UB mengikuti C, warna juga dapat diekstrak sebagai 4 byte yang tidak ditandatangani. Jika warna diekstrak sebagai 4 byte yang tidak ditandatangani, elemen array vertex yang mengikuti terletak pada kemungkinan alamat sejajar titik mengambang pertama.
Jika Anda memanggil glInterleavedArrays saat mengkompilasi daftar tampilan, glInterleavedArrays tidak dikompilasi ke dalam daftar tetapi segera dijalankan.
Anda tidak dapat menyertakan panggilan ke glInterleavedArrays di glDisableClientState antara panggilan ke glBegin dan panggilan yang sesuai ke glEnd.
Catatan
Fungsi glInterleavedArrays hanya tersedia di OpenGL versi 1.1 atau yang lebih baru.
Fungsi glInterleavedArrays diimplementasikan di sisi klien tanpa protokol. Karena parameter array vertex bersifat sisi klien, parameter tersebut tidak disimpan atau dipulihkan oleh glPushAttrib dan glPopAttrib. Gunakan glPushClientAttrib dan glPopClientAttrib sebagai gantinya.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung |
Windows 2000 Professional [hanya aplikasi desktop] |
Server minimum yang didukung |
Windows 2000 Server [hanya aplikasi desktop] |
Header |
|
Pustaka |
|
DLL |
|