1. Ray Tracing
Ray tracing adalah suatu metode untuk menghasilkan gambar yang dibuat
dalam lingkungan komputer 3D. Cara kerjanya adalah dengan mengikuti jejak
(tracing) suatu sinar (ray) dari suatu mata imajiner yang melalui sebuah pixel di layar
virtual dan mengakumulasi kontribusi setiap sinar dalam scene di pixel tersebut.
Setiap sinar yang berasal dari mata tersebut diperiksa apakah
berpotongan/bertabrakan dengan objek-objek di dalam scene. Scene adalah kumpulan
objek-objek dan sumber cahaya yang akan dilihat oleh pengamat. Setiap terjadi
tabrakan antara sinar dan objek, warna pixel di-update, lalu tergantung dari jenis
material objek dan algoritma yang dipakai, sinar tersebut dapat diteruskan atau
dihilangkan.
Dengan metode ray tracing ini, kita dapat membuat berbagai efek yang sulit
atau bahkan tidak mungkin dengan metode lain. Diantara efek-efek tersebut adalah
pemantulan, tembus cahaya, dan bayangan.
Dalam menggunakan ray tracing, umumnya dibuat suatu batasan agar lebih
mangkus. Contohnya, pixel akan di-update jika sinar telah memantul n kali atau telah
bergerak sejauh m tanpa berpotongan dengan apapun. N dan M adalah nilai pembatas.
Intensitas cahaya dan warna dari pixel yang bersangkutan dihitung berdasarkan
sejumlah algoritma, baik dengan algoritma klasik atau dengan teknik radiosity.
Salah satu metode turunan dari ray tracing adalah photon mapping. Pada
photon mapping ini, sinar dibuat dari sumber cahaya dan dari mata pengamat secara
independen. Sinar yang dibuat akan terus bergerak dalam scene sampai habis diserap
oleh sebuah permukaan, bergerak ke arah yang tidak akan terjadi perpotongan, atau
jaraknya terlalu jauh dari pengamat. Inti dari photon mapping adalah melakukan
simulasi pencahayaan, namun hal ini jauh lebih lambat daripada ray tracing biasa.
Ray Tracing bekerja dengan cara mensimulasi jalur sinar cahaya seperti di
dunia nyata disaat mereka memantul dengan benda-benda – cahaya2 tersebut ditrace
di dalam scene. Tujuannya adalah memilih warna yang didapat oleh sinar setelah tiap
pantulan sebelum mencapai mata.
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.
Secara umum, ray tracingdapat dibentuk dari algoritma biktii berikut ini:
4. Keutungan dan Kekurangan Ray Tracing
Keuntungan
secara akurat menghitung penerangan langsung
bayangan,pemantulan,spekular dan transparasi.
Kelemahan
membutuhan waktu perhitungan yang lama. Setiap sudut pandang
membutuhkan perhitunganya masing-masing.Tidak menghitung pemantulan dari
objek objek lain terhadap sebuah objek
1. Tiga efek umum dalam ray tracing adalah pemantulan, tembus cahaya, dan
bayangan.
2. Ray tracing adalah fungsi rekursif.
Setiap sebuah sinar berpotongan dengan sebuah permukaan (disebut juga
tabrakan), terjadi rekursi. Dari titik perpotongan tersebut, satu atau lebih sinar dibuat
untuk menentukan objek apa yang terpantul di titik itu (jika memantulkan cahaya),
objek apa yang terlihat melalui titik itu (jika tembus cahaya), sumber cahaya mana
saja yang dapat terlihat dari titik itu (untuk menentukan bayangan), dan lain-lain.
Basis dari fungsi ray tracing ini adalah batasan dimana sinar berhenti bergerak.
Basis-basis yang umum digunakan diantaranya :
a. Jika tidak berpotongan dengan objek maka warna yang dihasilkan adalah warna
latar belakang
b. Jika objek yang berpotongan terdekat adalah sumber cahaya maka warna yang
dihasilkan sesuai warna cahaya
c. Jika jumlah pantulan melewati batas pemantulan maka sinar berhenti bergerak
d. Jika jarak sinar dari layar melewati jarak maksimum maka sinar berhenti
bergerak
3. Sinar
Sinar yang digunakan dalam ray tracing adalah sebuah vektor. Persamaan
sebuah sinar dapat ditulis sebagai :
t = panjang sinar
4. Fungsi Perpotongan
Untuk menentukan apakah sebuah sinar berpotongan dengan objek, diperlukan
sebuah fungsi perpotongan. Fungsi ini dibuat spesifik untuk setiap jenis objek,
misalnya bola atau poligon. Sebagai contoh, kita akan membuat fungsi perpotongan
dengan bola.
Persamaan bola pada ruang 3D :
At2 + Bt + C=0
1. Pemantulan
7. Bayangan
Pada gambar diatas tokoh utama dalam film ini ini yaitu Hiro dan BayMax,
dan pada gambar tersebut terlihat ada efek glossy atau seperti kilauan cahaya pada
bagian permukaan baymax, yang seakan Bagian body(metal) baymax memantulkan
cahaya lampu dan memantulkannya ke obyek lain yang ada disekitarnya, yang
membuat body metal dari baymax terlihat lebih realistik
Gambar 1.11 Implementasi pada film Animasi Big Hero 6 Big Hero 6
Pada Scene saat hiro memeluk baymax ini terlihat sekali penggunaan
raytracing. Sorotan dari sinar matahari disore hari yang menembus kaca sampai
kedalam ruangan, membuat efek pantulan sinar matahari yang dapat dlihat dengan
lantai ber warna kuning dari hasil pantulan tersebut.
1.12 Implementasi pada film Animasi Big Hero 6 Big Hero 6
Scene ini memperlihatkan adegan di atas langit sore senja, terlihat efek
raytracing memberikan pantulan pada permukaan sebelah kanan dari body baymax
dan pada permukaan helm dari hiro, membuat suasan sore terlihat lebih realistik
Pada gambar dibawah ini dapat kita lihat pemeran utama yang bernama Flint
Lockwood bersama dengan beberapa pemeran lawanya yaitu Sam Sparks, Earl
Devereaux dan yang lainya. Pada texture karakter strawberry yang sedang dibawa
oleh Sam diberi efek kilauan cahaya (Glossy) sehingga terlihat memantulkan cahaya
sinaran yang dating dari arah yang berlawanan agar terlihat lebih realistic. Kemudian
pada karakter manusianya diberi efek warna matte yang seakan akan membuat
terkesan seperti pantulan cahya pada kulit aslinya (In Real Life (IRL)).
Efek ray tracking ini juga harus didukung dengan efek pencahayaan yang juga
harus terlihat realistic dan biasanya pada blender penambahan efek pencahayaan ini
menggunakan node editor.
Gambar 1.13 Implementasi Efek Ray Tracing pada film “Cloudy with a Chance of Meatballs
2”
Gambar 1.14 Implementasi Efek Ray Tracing pada film “Cloudy with a Chance of Meatballs
2”
Gambar 1.15 Implementasi Efek Ray Tracing pada film “Cloudy with a Chance of Meatballs
2”