fungsi glFrustum
Fungsi glFrustum mengalikan matriks saat ini dengan matriks perspektif.
Sintaks
void WINAPI glFrustum(
GLdouble left,
GLdouble right,
GLdouble bottom,
GLdouble top,
GLdouble zNear,
GLdouble zFar
);
Parameter
-
left
-
Koordinat untuk bidang kliping vertikal kiri.
-
right
-
Koordinat untuk bidang kliping vertikal kanan.
-
Bawah
-
Koordinat untuk bidang kliping horizontal bawah.
-
teratas
-
Koordinat untuk bidang kliping horizontal bawah.
-
zNear
-
Jarak ke bidang kliping yang mendekati. Harus positif.
-
zFar
-
Jarak ke bidang kliping yang jauh. Harus positif.
Menampilkan nilai
Fungsi ini tidak mengembalikan nilai.
Kode kesalahan
Kode kesalahan berikut dapat diambil oleh fungsi glGetError .
Nama | Makna |
---|---|
|
zNear atau zFar tidak postitif. |
|
Fungsi ini dipanggil antara panggilan ke glBegin dan panggilan yang sesuai ke glEnd. |
Keterangan
Fungsi glFrustum menggambarkan matriks perspektif yang menghasilkan proyeksi perspektif. Parameter (kiri, bawah, zNear) dan (kanan, atas, zNear) menentukan titik pada bidang kliping dekat yang dipetakan ke sudut kiri bawah dan kanan atas jendela, masing-masing, dengan asumsi bahwa mata terletak di (0,0,0). Parameter zFar menentukan lokasi bidang kliping jauh. ZNear dan zFar harus positif. Matriks yang sesuai diperlihatkan dalam gambar berikut.
Fungsi glFrustum mengalikan matriks saat ini dengan matriks ini, dengan hasil menggantikan matriks saat ini. Artinya, jika M adalah matriks saat ini dan F adalah matriks perspektif frustum, maka glFrustum menggantikan M dengan M F.
Gunakan glPushMatrix dan glPopMatrix untuk menyimpan dan memulihkan tumpukan matriks saat ini.
Presisi buffer kedalaman dipengaruhi oleh nilai yang ditentukan untuk zNear dan zFar. Semakin besar rasio zFar terhadap zNear , semakin kurang efektif buffer kedalaman akan membedakan antara permukaan yang berdekatan. Jika
kira-kira mencatat2 (r) bit presisi buffer kedalaman hilang. Karena r mendekati tak terbatas saat zNear mendekati nol, Anda tidak boleh mengatur zNear ke nol.
Fungsi berikut mengambil informasi tentang glFrustum:
glGet dengan argumen GL_MATRIX_MODE
glGet dengan argumen GL_MODELVIEW_MATRIX
glGet dengan argumen GL_PROJECTION_MATRIX
glGet dengan argumen GL_TEXTURE_MATRIX
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 |
|