Apa itu Poligon OpenGL®?

Poligon Open Graphics Library® (OpenGL®) adalah objek apa pun yang dibuat di OpenGL® yang terdiri dari lebih dari dua simpul. Pada dasarnya, objek apa pun yang bukan titik atau garis dianggap poligon. OpenGL®, serta sebagian besar kartu grafis, biasanya memiliki pengoptimalan khusus untuk menangani terutama dengan segitiga, atau poligon tiga sisi, karena segitiga adalah jenis poligon paling sederhana yang dapat dibuat dengan simpul dan sisi paling sedikit. Dalam beberapa kasus, segi empat, atau poligon empat sisi, dapat ditangani oleh OpenGL®, terutama dalam mode menggambar dua dimensi (2D). Dengan pengecualian poligon OpenGL® sederhana yang cembung, sebagian besar bentuk dengan lebih dari tiga simpul pada akhirnya akan dipecah menjadi segitiga melalui proses yang disebut tessellation, yang dapat memiliki efek dramatis yang tidak diinginkan pada sebuah adegan.

Satu-satunya jenis poligon OpenGL® yang dapat digambar secara asli tanpa perlu tesselasi dikenal sebagai poligon sederhana. Jenis bentuk ini mengikuti beberapa aturan yang sangat sederhana. Sisi-sisinya harus cembung, artinya tidak membentuk sudut pada titik sudut yang kurang dari 90°. Tidak ada sisi yang dapat saling bersilangan, dan hanya dua garis yang dapat bertemu di sembarang titik. Ini membatasi poligon sederhana ke bentuk mandiri 2D seperti persegi atau segi delapan karena, jika itu tiga dimensi (3D), maka lebih dari dua garis akan bertemu di beberapa simpul.

Saat membuat poligon OpenGL® yang sangat kompleks, seringkali lebih mudah untuk membuat objek dalam program pemodelan 3D eksternal. Hal ini tidak hanya memungkinkan lingkungan visual yang lebih nyaman untuk membangun objek, tetapi memiliki manfaat tambahan untuk memberikan kontrol kepada desainer atas bagaimana bentuk diuji sehingga tidak menimbulkan masalah saat dirender. Sebagai alternatif, poligon dapat dibuat secara prosedural melalui algoritme yang memplot simpul menurut pola, seperti yang dapat dilakukan untuk membuat pola heliks atau spiral.

Setiap poligon OpenGL® memiliki wajah, area padat di dalam garis bentuk. Meskipun dimungkinkan untuk mengubah perilaku ini, secara umum setiap poligon hanya terlihat ketika wajahnya mengarah ke kamera tampilan. Jika poligon menghadap ke arah yang salah, poligon mungkin menjadi tidak terlihat, tergantung pada mode rendering.

Setiap poligon OpenGL® juga memiliki nilai yang dikenal sebagai normal. Normal digunakan untuk menentukan arah permukaan poligon menghadap. Meskipun poligon jelas pada sudut tertentu dan pada posisi tertentu, permukaan normal dapat membantu menciptakan efek tekstur khusus atau meniru sifat fisik yang tidak seragam. Normal untuk poligon OpenGL® dapat diatur ke nilai apa pun, bahkan nilai negatif, meskipun hasilnya mungkin tidak dapat diprediksi.