PENDAHULUAN
Visual Surface Determination (VSD) atau disebut juga dengan Hidden Surface Removal
(HSR) merupakan suatu cara untuk menentukan garis atau permukaan yang terlihat
pada suatu objek 3D dan spesifikasi pandangan (kamera).
Terdapat 3
pendekatan utama pada permukaan terlihat, yaitu:
1.
Tes
penampakan konservatif (conservative surface test)
Tes penampakan
konservatif hanya sebatas trivial reject saja, yang tidak memberikan jawaban,
contohnya back-free culling. Untuk mendapat penyelesaiannya harus dilakukan
dengan pendekatan yang lain.
2.
Ketelitian
gambar (image-precission)
Bagian yang terlihat ditentukan dengan point-point pada setiap
posisis pixelnya pada bidang proyeksi. Contohnya pada raytracing, atau Z-buffer.
3.
Ketelitian
objek (object-precission)
Menentukan bagian mana
yang terlihat dengan membandingkan objek dan bagian-bagiannya dalam layar. Contohnya
pada poly clipping, BSP trees, dll.
PEMBAHAS
Backface
culling merupakan cara
kerja metode ini adalah dengan hanya menggambar poligon yang memiliki vektor
normal keluar, dengan cara mencari dot product dari vektor normal poligon dan
vektor arah pelihat seperti terlihat pada persamaan 1.0. Apabila hasilnya lebih
besar dari nol maka vektor normal poligon merupakan vektor normal keluar dan
poligon akan digambar
n.v
> 0
(Persamaan 1.0)
Penghapusan dengan backface culling akan membuat tidak akan
ada lagi faces (gambaran) di belakang objek yang akan ditampilkan. Batasan dari
algoritma ini adalah:
1.
Hanya dapat
digunakan pada benda padat yang dimodelkan sebagai polygon mesh. Ini merupakan
model yang paling umum untuk membangun sistem grafis line-scan.
2.
Bekerja baik
pada polyhedral cembung, tapi belum tentu pada polyhedral cekung. Contohnya
pada gambar di bawah ini, dimana bagian dari hidden face tidak akan dihapuskan
oleh penghapusan back-face (pengolahan yang lebih lanjut).
Titik-titik yang terdapat pada permukaan normal dapat dikategorikan bebrapa
jika dilihat dari suatu pusat proyeksi pada poligonnya. . Lebih jelasnya dapat dipahami pada
gambar 1.0
1.
Positive (> 0) : poligon back-face
2.
Zero (= 0) : jika dilihat dari tepi
3.
Negative (< 0) : poligon front-face
(Gambar 1.0)
Contoh implementasi backface culling adalah pada bentuk solid tidak
standar adalah pada bentuk pecahan tengkorak pada gambar 1.1. Ini
adalah langkah dalam pipa grafis yang menguji apakah titik-titik di poligon
muncul secara searah jarum jam atau berlawanan arah jarum jam saat
diproyeksikan ke layar. Jika pengguna telah menentukan bahwa poligon front-facing
memiliki belitan searah jarum jam, namun poligon yang diproyeksikan di layar
memiliki belokan berlawanan arah jarum jam maka telah diputar untuk menghadap
ke depan dari kamera dan tidak akan ditarik.
Gambar 1.1.
Proses membuat objek
rendering lebih cepat dan lebih efisien dengan mengurangi jumlah poligon agar
program bisa menggambar. Obyek-obyek tersebut benar-benar tersumbat oleh sisi
yang menghadap kamera.
Secara umum backface culling dapat diasumsikan tidak
menghasilkan artifak yang terlihat dalam adegan yang diberikan jika hanya
berisi geometri tertutup dan buram. Dalam adegan yang mengandung poligon
transparan, poligon menghadap ke belakang bisa terlihat melalui proses
komposisi alfa. Dalam rendering bingkai kawat, pemusnahan di bagian belakang
dapat digunakan untuk mengatasi masalah penghapusan garis tersembunyi secara
keseluruhan, namun hanya untuk geometri cembung tertutup.
Tidak ada komentar:
Posting Komentar