Less is more… Or is it?
Pada awal-awal saya tertarik pada computer graphic dan mulai lihat-lihat gambar baca-baca di artikel sana sini (walau ga ngerti) ada satu hal yang menurut saya kontradiksi.
Di satu pihak, ada golongan orang (kita sebut saja golongan pesimis) yang berusaha mengurangi jumlah poligon pada aplikasi mereka, di lain pihak, ada golongan (kita sebut saja golongan optimis) yang justru ingin memperbanyak jumlah poligon pada aplikasi mereka.
Sebagai contoh, aplikasi terrain rendering (topik tugas akhir saya), algoritma ini dan ini bertujuan mengurangi jumlah poligon pada terrain, sedangkan movie ini, menunjukkan terrain dengan poligon yang sudah dilipatgandakan jumlahnya.
Lalu, kenapa hal ini bisa terjadi? Apakah kedua hal tersebut memang bertolak belakang?
First thing first…
Kita mulai dengan yang dasar. Apa yang saya maksud dengan poligon di atas? Yang saya maksud adalah triangle, poligon paling sederhana. Dengan tiga buah vertex, kita bisa mendefinisikan sebuah bidang 3D. Bahkan GPU dibuat berbasis triangle.
Jumlah poly count biasanya menghitung jumlah triangle yang dirender tiap frame atau tiap scene. (Catatan : poly count atau fps tidak terlalu representatif untuk melihat kemampuan grafis, lebih representatif vertex count. CMIIW on this.)
Pada LOD, umumnya jumlah vertex tetap walau jumlah triangle dikurangi, hal ini dilakukan dengan mengatur index list untuk merender triangle. Pengurangan jumlah index ini memberikan hasil yang cukup signifikan untuk mengurangi waktu pemrosesan dan mengurangi memori yang digunakan. Hal ini sangat dibutuhkan terutama jika aplikasi yang dibuat adalah real time large scale terrain (baca : TA saya T_T).
Dengan LOD tersebut, kerja CPU jadi lebih ringan dan aplikasi bisa lebih terasa real-time. Hal ini menurut saya adalah yang menjadi alasan golongan pesimis selalu berusaha mengurangi jumlah poligon.
Namun, dengan kemajuan teknologi, sekarang kita sudah mempunyai bukan hanya CPU, tapi juga GPU! GPU obviously adalah unit yang khusus dibuat untuk memproses grafik. Dengan prosesor pribadi, memori pribadi, bahkan kipas atau heatsink pribadi, GPU telah membuat banyak CPU yang dipaksa melakukan software rendering menjadi iri.
Merender sebuah triangle adalah pekerjaan mudah untuk GPU, dibandingkan dengan sebuah CPU yang merender sebuah triangle sambil menjalankan OS, programming IDE, IM, web browser, dan mungkin media player. Sehingga bukan masalah untuk GPU merender triangle bekalikalilipat dibanding CPU.
Hal tersebut, menurut saya, adalah alasan kenapa golongan optimis begitu gigih memperbanyak poligon demi membuat tampilan yang lebih bad ass. :D
Lalu, apakah kedua hal tadi adalah bertolak belakang?
Menurut saya,, tidak. Yang satu, mengurangi beban pekerjaan CPU agar bisa lebih real-time, yang satunya lagi, tidak menggunakan CPU tapi hasil yang didapat bisa lebih bad ass. It’s a win win solution if you ask me… :p
Kita lihat saja seberapa besar pengaruh tulisan ini terhadap TA saya…
Sad but cheers… =( *inget TA



itu solusi yang win-win tapi tidak langsung berhubungan..
kalau dari cpu jumlah vertexnya dikurangi, tapi begitu udah sampe di gpu, jumlah vertexnya ditambah menggunakan geometry shader.
baru deh win-win solution dan saling berhubungan..
yup, exactly… :D
ga ngerti sayah T T…
ajarin ntar yah pe :(
yah, belajar sama2 aja… :D