Haruskah saya khawatir tentang rendering berbasis quad dalam skenario dunia nyata?

9

Sebagian besar waktu dalam bab-bab pertama buku acak tentang rasterisasi dan teknik rendering, saya menemukan beberapa frasa tentang sistem rendering berbasis segitiga dan yang berbasis quad.

Saya belum pernah mengalami GPU atau saluran pipa berbasis quad. Apakah saya harus khawatir tentang hal itu ketika berhadapan dengan OpenGL 3.0+, atau hanya warisan?

pengguna827992
sumber

Jawaban:

9

Tidak, tidak. Semua GPU komoditas generasi saat ini menggunakan metode rasterisasi berbasis segitiga (dan telah digunakan selama beberapa waktu) secara eksklusif. Walaupun OpenGL versi lama mendukung GL_QUADSmode rendering, ini dikonversi menjadi segitiga oleh GPU komoditas. Kemungkinan GL_QUADShanya menghasilkan rasterisasi berbasis segi empat yang sebenarnya pada perangkat keras akademik esoterik atau perangkat keras yang digunakan untuk rendering offline 3D kelas atas di awal tahun 80-an atau 90-an (saya tidak punya bukti untuk mendukung klaim ini, saya hanya mendalilkan).

Yang mengatakan, melihat segi empat (dan secara umum, rasterisasi poligon selain rasterisasi segitiga) masih bisa mendidik, dan dengan demikian berguna, hanya dengan memberikan perspektif yang berbeda. Algoritma yang terlibat dalam melakukannya secara efisien menarik dan terkadang masih memiliki aplikasi di luar pemrograman grafis. Saya pernah menggunakan teknik rasterisasi ujung-berjalan poligon sebagai sarana untuk mengimplementasikan simulasi air 2D palsu sederhana, misalnya.

Ini juga dapat membantu Anda memahami mengapa rasterisasi segitiga lebih disukai, sebagian karena sifat poligon yang berpotensi non-planar selain segitiga dan karena beberapa optimasi yang dihasilkan yang dapat Anda lakukan dengan segitiga.


sumber
7

Jika Anda menggunakan API rendering, maka Anda hanya perlu khawatir tentang apa yang dikatakan API untuk Anda khawatirkan. OpenGL tidak mengatakan apa-apa tentang sistem rendering berbasis kuad atau segitiga. Jadi Anda tidak perlu khawatir dengan itu.

Bagaimanapun, semua GPU kelas konsumen menggunakan segitiga, bukan paha depan.

Nicol Bolas
sumber
Saya bingung, jadi mengapa membicarakan ini di buku OpenGL jika OpenGL API didasarkan pada asumsi bahwa model dibentuk oleh segitiga?
user827992
4
@ user827992: Jangan tanya saya; banyak buku memiliki informasi berlebihan di dalamnya. Anda bahkan tidak pernah mengatakan "buku acak" apa yang Anda temukan. Apakah itu sebenarnya buku tentang OpenGL, atau apakah itu buku tentang grafik yang menggunakan OpenGL?
Nicol Bolas