Ray Tracing
Ray tracing adalah suatu metode untuk me-render obyek 3D yang hasilnya
realistik seperti foto. Metode ini dilakukan dengan cara menelusuri sinar mata
atau sumber cahaya, kemudian diperiksa apakah sinar tersebut mengenai obyek
atau tidak. Jika ternyata sinar yang ditelusuri tersebut mengenai suatu obyek
maka selanjutnya diperhitungkan intensitas pada obyek tersebut, yaitu
intensitas ambient, diffuse dan specular. Hasil dari perhitungan intensitas
inilah yang terlihat oleh mata.
Konsep Ray Tracing
Ada dua konsep dasar yang harus di perhatikan dalam ray
tracing ini, yaitu:
1. Kita dapat melihat sebuah benda karena benda tersebut memantulkan
cahaya. Cahaya yang dipantulkan tersebut lalu akan ditangkap oleh retina mata
dan diterjemahkan oleh otak menjadi apa yang kita lihat.
2. Dalam perjalanan sebuah sinar, jika sinar tersebut menabrak suatu
permukaan, dapat terjadi tiga hal tergantung pada jenis permukaan yang
ditabrak, yaitu penyerapan, pemantulan, dan pembiasan. Sebuah permukaan dapat
memantulkan semua atau sebagian dari sinar, baik ke satu atau banyak arah.
Permukaan tersebut juga dapat menyerap sebagian dari sinar, mengurangi
intensitas sinar yang terpantul atau terbias. Jika permukaan tersebut mamiliki
sifat tembus cahaya (transparency/translucent) maka permukaan itu akan
membiaskan sebagian sinar dan menyerap sebagian atau semua spektrum
sinar, sehingga dapat mengubah warna sinar.
Namun perlu diperhatikan bahwa ada
perbedaan mendasar antara konsep diatas dengan ray tracing.
Pada ray tracing, umumnya sinar berasal dari mata pengamat,
sedangkan pada kenyataannya sinar selalu berasal dari sumber cahaya. Karena itu
ada dua jenis ray tracing, eye-based dan light-based. Eye-based adalah ray
tracing dimana sinar berasal dari mata pengamat, sedangkan pada light-based
ray tracing, sinar berasal dari sumber cahaya.
Implementasi Ray Tracing pada film Animasi Cars 2
Berikut adalah contoh implementasi penggunaan efek ray
tracing pada perfilman pixar, dan disini kami mencoba menganalisa efek ray
tracing pada film Cars 2.
Pada gambar pertama yaitu objek dari tokoh utama dalam film ini ini yaitu Lightning McQueen, dan pada gambar tersebut terlihat ada efek glossy atau seperti kilauan cahaya pada bagian samping mobil dan depan mobil, yang seakan membuat mobil Lightning McQueen
memantulkan cahaya lampu dan memantulkannya ke
obyek lain yang ada disekitarnya, yang membuat mobil terlihat lebih realistic. Kemudian pada mobil di belakangnya yaitu pada mobil
hijau yang pada perannya bernama sir miles Axlerod juga terdapat efek
pemantulan cahaya pada bagian matanya dan juga pada bagian sampingnya.
Efek ray tracing ini juga harus didukung dengan efek pencahayaan yang
juga harus terlihat realistic dan
biasanya pada salah
satu software pembuatan objek 3D yaitu blender, penambahan efek pencahayaan ini
menggunakan node editor.
(Gambar 1.0)
Dan berikut adalah beberapa efek ray tracing yang berhasil kami abadikan dengan screenshoot pada
film animasi pixar Cars 2.
(Gambar 1.1)
(Gambar 1.2)
(Gambar 1.3)
RADIOSITY
Metode radiosity adalah sebuah
algoritma ruang obyek yang menyelesaikan intensitas pada titik diskrit
permukaan dan penyeselesaian interaksi terhadap difusi dalam sebuah lingkungan.
Radiosity merupakan metode dengan kebutuhan
processor tinggi untuk mendapatkan tingat energi atau sinar pencahayaan yang
baik dan energi tersbut dapat
dipancarkan atau di pantulkan oleh permukaan sehingga menghasilkan gambar yang
terlihat nyata atau realistis.
KONSEP
RADIOSITY
coba
perhatikan gambar-gambar berikut ini (sumber : google).
Gambar 2.0 (efek radiosity)
Gambar di atas merupakan gambar di
dalam ruangan yang ditampilkan dengan efek bayangan atau pantulan cahaya
sehingga memberi kesan yang realistis (tampak seperti keadaan sebenarnya).
Untuk menghasilkan gambar seperti di atas, dapat digunakan teknik-teknik
pencahayaan yang telah banyak berkembang.
Teknik pencahayaan pada grafika 3D
merupakan sebuah objek yang penting, karena dengan cahaya ini sebuah objek
dapat terlihat nyata dan dapat dilakukan proses rendering.
Rendering adalah proses menangkap
segala sesuatu yang ada di dalam scene termasuk geometri, material, cahaya,
lingkungan serta efek-efek yang terdapat didalamnya. Sumber cahaya ini juga
membuat sebuah objek menjadi lebih realistis. Sebuah sumber cahaya memiliki
jenis.
1.
Metode
Rendering
Metode
rendering yang paling sederhana dalam grafika 3D :
·
Wireframe
rendering
Wireframe
yaitu Objek 3D dideskripsikan sebagai objek tanpa permukaan. Pada wireframe
rendering, sebuah objek dibentuk hanya terlihat garis-garis yang menggambarkan
sisi-sisi edges dari sebuah objek. Metode ini dapat dilakukan oleh sebuah
komputer dengan sangat cepat, hanya kelemahannya adalah tidak adanya permukaan,
sehingga sebuah objek terlihat tranparent. Sehingga sering terjadi
kesalahpahaman antara siss depan dan sisi belakang dari sebuah objek.
·
Hidden
Line Rendering
Metode
ini menggunakan fakta bahwa dalam sebuah objek, terdapat permukaan yang tidak
terlihat atau permukaan yang tertutup oleh permukaan lainnya. Dengan metode
ini, sebuah objek masih direpresentasikan dengan garis-garis yang mewakili sisi
dari objek, tapi beberapa garis tidak terlihat karena adanya permukaan yang
menghalanginya.
Metode
ini lebih lambat dari dari wireframe rendering, tapi masih dikatakan relatif
cepat. Kelemahan metode ini adalah tidak terlihatnya karakteristik permukaan
dari objek tersebut, seperti warna, kilauan (shininess), tekstur, pencahayaan,
dll.
·
Shaded
Rendering
Pada
metode ini, komputer diharuskan untuk melakukan berbagai perhitungan baik
pencahayaan, karakteristik permukaan, shadow casting, dll. Metode ini
menghasilkan citra yang sangat realistik, tetapi kelemahannya adalah lama waktu
rendering yang dibutuhkan.
Pada
grafika 3D dikenal beberapa macam sumber cahaya, yaitu :
·
point
light
memancar
ke segala arah, namun intensitas cahaya yang diterima objek bergantung dari
posisi sumber cahaya. Tipe ini mirip seperti lampu pijar dalam dunia nyata.
(Gambar 2.1)
·
spotlight
Memancarkan
cahaya ke daerah tertentu dalam bentuk kerucut. Sumber cahaya terletak pada
puncak kerucut. Hanya objek-objek yang terletak pada daerah kerucut tersebut
yang akan nampak.
(Gambar 2.2)
·
ambient
light
Cahaya
latar/alam. Cahaya ini diterima dengan intensitas yang sama oleh setiap
permukaan pada benda. Cahaya latar tersebut dimodelkan mengikuti apa yang
terjadi di alam, diaman dalam keadaan tanpa sumber cahaya sekalipun, benda
masih dapat dilihat.
(Gambar 2.3)
·
directional
light
memancarkan
cahaya dengan intensitas sama ke suatu arah tertentu. Letak tidak mempengaruhi
intensitas cahayanya. Tipe ini dapat menimbulkan efek seolah-olah sumber cahaya
berada sangat jauh dari objek.
(Gambar 2.4)
·
parallel
point
Sama dengan directional,
hanya pencahayaan ini memiliki arah dan posisi.
(Gambar 2.4)
Model dari pencahayaan, dipakai
untuk menghitung intensitas dari cahaya yang terlihat dari setiap posisi pada
setiap permukaan benda yang terlihat oleh kamera. Ketika melihat sebuah benda,
terlihat cahaya yang dipantulkan dari permukaan benda, dimana cahaya ini
merupakan intregrasi dari sumber-sumber cahaya serta cahaya yang berasal dari
pantulan cahaya permukaan-permukaan yang lain. Karena itu benda-benda yang
tidak langsung menerima cahaya dari sumber cahaya, masih mungkin terlihat bila
menerima cahaya pantulan yang cukup dari benda didekatnya.
Model sederhana dari sumber cahaya
adalah sebuah titik sumber, dimana dari titik ini cahaya dipancarkan.
Perhitungan pencahayaan bergantung pada sifat dari permukaan yang terkena
cahaya, kondisi dari cahaya latar serta spesifikasi sumber cahaya. Semua sumber
cahaya dimodelkan sebagai sumber titik yang dispesifikasikan dengan :
I.
Lokasi
Lokasi
(x,y,z) dari sebuah sumber cahaya akan menentukan pengaruhnya terhadap sebuah
objek.
II.
Intensitas
Intensitas
cahaya menyatakan kekuatan cahaya yang dipancarkan oleh sebuah sumber cahaya.
Parameter ini merupakan angka, yang biasanya makin besar nilainya, makin terang
sumber cahaya tersebut.
III.
Warna
Warna
cahaya dari sumber ini akan mempengaruhi warna dari sebuah objek, jadi selain
warna objek tersebut warna cahaya yang jatuh pada objek tersebut akan
mempengaruhi warna pada rendering. Warna cahaya ini biasanya terdiri dari 3
warna dasar grafika komputer, yaitu: merah, hijau, biru atau lebih dikenal
dengan RGB.
Misalnya pantulan Phong, pelacakan
sinar, HDRI, dan radiosity. Untuk pantulan Phong dan pelacakan sinar, hasil
yang diperoleh kurang memuaskan karena menghasilkan model plastik yang
mengambang di dalam ruang bebas kelihatan secara alami menghantarkan kepada
teknik seperti bayangan dan pemetaan tekstur yang dicangkokkan pada model
pantulan dasar. Berbeda dengan teknik radiosity yang hasilnya lebih baik dan
tampak sempurna. Radiosity merupakan salah satu bidang dalam grafik komputer
yang berhubungan dengan pencahayaan. Radiosity atau disebut juga Global
Illumination (GI) adalah teknik pencahayaan virtual yang hasilnya paling
realistik diantara metode-metode lain, tetapi teknik ini adalah teknik yang
paling mahal, dalam arti membutuhkan waktu yang lama untuk menghasilkan hasil
yang realistik. Pengertian lain juga menyebutkan bahwa
Radiosity adalah sebuah metode yang
memiliki kebutuhan prosesor yang setidaknya sekuat pelacakan sinar dan ini
tidak diragukan lagi dan merupakan salah satu dari alasan karena tidak adanya
penyebaran seluruh grafik komputer. Seperti pelacakan sinar, setelah awal
penetapan metode tersebut, penelitian yang baru saja dilakukan
mengkonsentrasikan pada pengintegrasian fenomena pantuIan yang lain seperti
pantulan spekular ke dalam metode tersebut. Meskipun istilah 'nyata' merupakan
kata sifat yang digunakan secara berlebihan dalam grafik komputer, namun ia
tidak dapat disangkal lagi bahwa metode ini menghasilkan gambar yang paling
nyata dan berkesan.
-
Sejarah
Radiosity
Metode radiosity pertama kali
dikembangkan dalam pemindahan panas radiasi (Siegel dan Howell,1984) untuk
menjelaskan pemindahan panas antara elemen di dalam perapian atau pada sebuah
pesawat terbang.
Metode radiosity adalah sebuah
algoritma ruang obyek yang menyelesaikan intensitas pada titik diskrit atau
lekatan permukaan dalam sebuah lingkungan dan bukan untuk pixel di dalam sebuah
proyeksi bidang gambar. Jadi penyelesaiannya tidak tergantung pada posisi
objek.
Radiosity memberikan sebuah
penyelesaian terhadap interaksi difusi, akan tetapi dengan mengorbankan
lingkungan kedalam elemen 'largish' (yang mana pencahayaanya tetap). Pendekatan
ini tidak dapat menanggulangi pantulan spekular yang tajam dan pada dasamya
kita memiliki dua penyelesaian global yaitu : pelacakan sinar (yang menangani
pantulan specular global) dan radiosity (yang menangani pantulan difusi
global).
Metode radiosity telah dikembangkan
untuk menerangkan interaksi dari cahaya difusi antara elemen dalam sebuah
gambar. Metode ini sangat bagus untuk menghasilkan gambar dari lingkungan
interior, yang kebanyakan kumpulan dari obyek yang bukan spekular, dan ini
menghasilkan interior yang kelihatan nyata.
Kelebihan
Radiosity
Radiosity dapat mensimulasikan efek – efek
cahaya dalam kehidupan sehari – hari. Contohnya :
-
soft-shadow
(Bayangan dalam kehidupan nyata yang tidak terlalu tampak gelap tetapi semu).
-
Color
– Bleed (Pendekatan 2 benda yang warnanya kontras maka warna salah satu benda
akan menyebrang kebenda lain).
-
Ambient
Occlusion (AO), contohnya pencahayaan tidak langsung dan bayangan yang
dihasilkannya.
Kekurangan
Radiosity
-
Membutuhkan
biaya yang mahal.
-
Membutuhkan
waktu yang lama untuk menghasilkan hasil yang realistik.
-
Membutuhkan
kapasitas memory yang besar.
Pilihan
algoritma dasar di dalam metode radiosity adalah sebagai berikut:
Gathering
Sebuah matriks dari faktor bentuk
dihitung, disimpan, dan digunakan dalam sebuah penyelesaian Gauss-seidel
tradisional. Jika penyelesaian tersebut dipandang begitu ia berlangsung,
radiosity lekatan yang diperkirakan diperbaharui di dalam urutan mereka dalam
rumusan matriks.
Shooting
Cahaya dari masing-masing lekatan
ditembakkan kedalam lingkungan dan seluruh gambar diperbaharui untuk
masing-masing iterasi. Pendekatan ini dioptimisasi secara visual dengan
memperlakukan lekatan dalam urutan yang memperhitungkan jumlah energi yang
mereka pancarkan.
Shooting dan ambient
Sebuah suku ambient kini
dicantumkan dengan demikian maka perkiraan awal dapat dilihat. Pada
masing-masing iterasi mutu dan ketelitian penyelesaian bertambah dan pecahan
ambient dikurangi.
Radiosity hibrida dan
pelacakan sinar
Metode radiosity standar
menyediakan sebuah penyelesaian untuk interaksi dari permukaan difusi di dalam
sebuah lingkungan tertutup. Jika metode radiosity tersebut menjadi sebuah
teknik sintesa gambar standar, maka ia harus mencantumkan pemodelan fenomena
spekular. Wallace, Cohen, dan Greenberg (1987) melakukan ini dengan
menggabungkan pelacakan sinar dan memisahkan metode tersebut menjadi sebuah
pendekatan dua-lewatan.
Metode
radiosity pertama kali diperluas dengan mencantumkan interaksi spekular oleh
Immel, Cohen, dan Greenberg (1986) yang menggabungkan sebuah fungsi pantulan
dua arah kedalam persamaan radiosity dasar dan mengambil sebuah penyelesaian
yang tidak tergantung pada pandangan terhadap antar pantulan spekular. Akan
tetapi, pendekatan ini menghasilkan biaya tambahan komputasi yang sangat besar
untuk segala sesuatu namun gambar sederhana, karena di dalam sebuah
penyelesaian yang tidak tergantung pada pandangan, meskipun pencahayaan difusi
berubah relatif lambat pada sebuah permukaan, sub-pembagian yang teliti
diperlukan untuk interaksi specular. Di dalam pendekatan dua-lewatan Wallace,
lewatan yang pertama adalah perhitungan dari sebuah penyelesaian yang tidak
tergantung pada sebuah penyelesaian radiosity yang ditingkatkan. Sifat alami
dari interaksi antara dua permukaan dan mencantumkan interaksi difusi ke
difusi, specular ke difusi, dan specular ke specular. Pendekatan dua-lewatan
yang tidak tergantung pada pandangan/tergantung pada pandangan diistilahkan
'preprocess' dan 'postprocess'.
Preprocess
ditingkatkan dengan mencantumkan transmisi difusi (translucency) dan transpot
specular- ke-difusi. Metode radiosity dasar dengan menggunakan sebuah hemicube
untuk penentuan faktor bentuk kemudian digunakan.
Postprocess
menggunakan pelacakan sinar yang tidak tergantung pandangan yang
memperhitungkan interaksi specular-ke specular dan interaksi
difusi-ke-specular. Translucency diimplementasikan dengan menggunakan sebuah
hemicube pada belakan seperti halnya permukaan depan, yang memungkinkan arah
balik seperti halnya faktor bentuk maju dihitung.
Jadi, di dalam preprocess, atau
penyelesaian yang tidak tergantung pada pandangan, transport specular
diperhitungkan, namun hanya sampai pada perluasan tertentu untuk menghitung
komponen difusi secara teliti. Postprocess atau tergantung pada pandangan
memperlakukan mekanisme specular ke specular dan difusi ke specular dengan
menggunakan sebuah pendekatan pelacakan sinar. Pelacakan sinar normal, tentu
saja, memperlakukan transfer specular-ke-specular. Untuk menghitung mekanisme
difusi-ke-specular dengan benar, pengintegrasian intensitas cahaya yang datang
harus dilakukan pada seluruh belahan bola pada titik yang ditinjau, diberi
bobot dengan sifat pantul specular dua arah. Akan tetapi, Wallace, Cohen, dan
Greenberg (I 987) membuat anggapan bahwa hanya sebagian kecil dari sinar yang
datang pada belahan bola yang andil terhadap tonjolan specular yang
meninggalkan. Mereka menggunakan sebuah frustum pantulan persegi untuk meniru
tonjolan specular dan metode ini juga menggabungkan mekanisme specular ke
specular . Intensitas difusi yang datang kepada masing-masing frustum pantulan
dihitung dengan interpolasi linear dari intensitas puncak lekatan yang tidak
tergantung pada pandangan / preprocess.
Frustum
pantulan diimplementasikan secara geometri sebagai sebuah piramida persegi yang
ujung permukaannya dibagi kedalam n x n pixel. Permukaan yang dapat dilihat
ditentukan dengan menggunakan sebuah algoritma penyangga-Z yang biasa dengan
resolusi yang sangat rendah sekitar l0 x 10 pixel.
Intensitas yang datang yang dilihat
melalui sebuah pixel frustum pantulan'hanya intensitas permukaan yang dilihat
oleh pixel tersebut, jadi, intensitas tersebut dihitung di dalam fase
preprocess / tidak tergantung pada pandangan.
Jika sebuah permukaan yang dapat
dilihat adalah specular, maka proses tersebut diterapkan secara rekursif
sebagaimana dalam pelacakan sinar normal. Intensitas yang datang yang mengalir
melalui masing-masing pixel dijumlahkan untuk meniru sebaran specular dan dapat
juga dijadikan subyek pada sebuah fungsi pembebanan yang menirukan bentuk
sebaran specular. Wallace membatasi jumlah pekerjaan yang harus dilakukan pada
tahap ini dengan pembatasan kedalaman rekursif dimana proses tersebut
beroperasi dan juga dengan pengurangan resolusi pixel pada permukaan ujung dari
frustum pantulan sebagai sebuah fungsi kedalaman lacakan.
Implementasi
Radiosity pada film animasi LARVA
Gambar 2.5 (radiosity pada animasi
larva)
Pada film animasi larva (season 3
episode 5 - fireplug) terdapat efek pencahayaan atau metode radiosity dengan
kelebihan soft - shadow atau bayangan yang terlihat nyata yang tidak terlalu
gelap. Contoh bayangan pada gambar diatas adalah bayangan larva kuning, dimana
tubuh serta lidahnya terpancarkan cahaya sehingga menghasilkan bayangkan yang
tidak terlalu gelap, bayangannya sendiri mengikuti arah tubunya sehingga
bayangan tersebut dapat dilihat seperti nyata. Di gambar kedua pun sama ,
sangat jelas bayangan sayap burung yang mengikuti tubuh aslinya.
Di film animasi larva juga terdapat efek
radiosity dengan kelebihan color – bleed atau benda dengan warna kontras yang
terkena cahaya akan memantulkan cahayanya kembali dengan efek warna benda
tersebut ke benda lain.
Gambar 2.6(efek color bleed)
Contoh
dari gambar diatas adalah permen yang berada di larva kuning tersbut berwarna
hijau, karena terkena cahaya maka permen hijau tersebut akan memantukan cahanya
kembali ke benda lain (benda disini tanah), sehingga tanah akan terkena
pancaran cahaya hijau dari permen dan juga kekuningan dari si larva kuning.
Sumber:
Tidak ada komentar:
Posting Komentar