RAY TRACING dan RADIOSITY
Revew : 3D Photorealsm Ketepatan pemodelan objek Proeks secara perspektf Efek pencahaaan ang natural kepada permukaan tampak: pantulan, transparans, tekstur, dan baangan
Revew : Illumnaton model vs surface renderng Model pencahaaan: model untuk menghtung ntenstas cahaa pada satu ttk pada suatu permukaan Renderng permukaan: prosedur ang menerapkan model pencahaaan untuk mendapatkan ntenstas t semua ttk pada seluruh permukaan tampak
Revew : Model Pencahaaan Metoda untuk menghtung ntenstas cahaa: Ambent Dffuse Specular http://en.wkpeda.org/wk/dffuse_reflecton p// p /
Revew : Model Pencahaaan N cos Ф N.L L L ( Lx L Lz) ) ( X Lx L Lz X L L ( YL Y L ( Z Z L L P P ) P ) ) P Ia ( Wa Wd). Ka dst.cos Id Wd. Kd. dst dst.(cos) Is Ws. dst Ia Id Is I total Ks
http://www.huevaluechroma.com
Revew : Teknk Renderng Permukaan (Polgon) Melakukan perhtungan dengan model pencahaaan untuk semua ttk g tampak Ra tracng Melakukan nterpolas untuk ttk ttk pada permukaan dar sekumpulan ntenstas t hasl perhtungan dengan model pencahaaan Scan lne
Revew : Scan lne algorthms Permukaan = polgon Aplkas model dlpencahaaan: Perhtungan ntenstas tunggal untuk masngmasng polgon Intenstas tap ttk pada polgon ddapat dengan cara nterpolas Algortma: Flat (constant ntenst) shadng Gouraud shadng Phong shadng
Revew : Flat shadng Intenstas tunggal untuk setap polgon Semua ttk dalam polgon dtamplkan dengan ntenstas ang sama Serng dgunakan untuk mendapat tamplan cepat dar objek Akurat dengan asums: Objek = polhedron (bukan aproksmas k k kurva) Sumber cahaa cukup jauh (N.L konstan) Pengamat cukup jauh (V.R konstan) Bsa dsasat dengan memperkecl polgon facet
Flat shadng: contoh
Revew : Gouraud shadng Renderng polgon dengan nterpolas lnear terhadap nla nla ntenstas t vertex (ttk sudut polgon) Nla ntenstas untuk tap polgon dsesuakan dengan polgon lan ang bersebelahan untuk mengurang dscontnut (sepert g terjad pada flat shadng)
Revew : Langkah langkah Gouraud shadng Tentukan vektor normal satuan rata rata untuk setap vertex pada polgon Terapkan model pencahaaan ke tap vertex untuk mendapatkan ntenstasna Lakukan nterpolas lnear terhadap ntenstas vertex untuk mendapatkan ntenstas ttk ttk lan pada polgon.
1) Vektor normal untuk vertex V n k 1 N v n k 11 N N k k Setelah mendapatkan vektor normal pada vektor V, dengan model pencahaaan bsa ddapat ntenstas untuk ttk tersebut
2) Interpolas ntenstas 2) Interpolas ntenstas 2 4 1 1 2 4 4 I I I 2 2 1 1 2 1 4 5 4 5 4 4 4 5 5 I x x x x I x x x x I P P P
Interpolas secara nkremental Interpolas secara nkremental 1 2 2 2 1 1 1 2 1 2 I I I 1 2 ' I I I I 1 2 I I
Gouraud shadng: contoh
Kekurangan Gouraud Tamplan hghlght tdak sempurna Mach band: gars terang atau gelap muncul pada permukaan Akbat penggunaan nterpolas lnear Untuk mengurang efek tersebut: Perkecl ukuran polgon Gunakan k metode l lan (msal: Phong)
Revew : Phong shadng Interpolas terhadap vektor normal Model pencahaaan dterapkan pada semua ttk pada permukaan Memberkan hghlght hl h ang lbh lebh realstk k dan mereduks efek Mach band
Langkah langkah Phong Tentukan vektor normal satuan rata rata untuk setap vertex pada polgon Lakukan nterpolas lnear terhadap vektor normal ke seluruh permukaan polgon Terapkan model pencahaaan sepanjang scan lne untuk mendapatkan ntenstas setap ttk pada permukaan
Interpolas vektor normal N 2 1 N 1 N 2 1 2 1 2 Untuk mendapatkan vektor-vektor normal antar scan lne dan sepanjang scan lne dgunakan metode nkremental
Phong shadng: contoh
Hasl lebh akurat Evaluas Phong Interpolas vektor normal Model pencahaaan dterapkan pada tap ttk Trade off: butuh baa komputas ang lebh besar Fast Phong Shadng: aproksmas ntenstas dengan perluasan deret Talor permukaan dengan patch berbentuk segtga
wreframe Flat shadng Gouraud shadng Phong shadng
computer.ourdctonar.com/flat com/flat-shadng http://www.hlc-games.de/forum/vewtopc.php?f=10&t=56
RAY TRACING Kelanjutan de Ra Castng Snar dteruskan (memantul ke / menembus objek lan) Mencatat semua kontrbus terhadap ntenstas suatu ttk Untuk mendapatkan efek fkpantulan dan transms secara global Ra Tracng dasar: deteks permukaan tampak, efek baangan, transparans, pencahaaan dengan beberapa sumber cahaa Pengembangan Ra Tracng: tamplan fotorealstk (terutama objek mengklap)
http://en.wkpeda.org/wk/ra_tracng_(graphcs)
http://en.wkpeda.org/wk/ra_tracng_(graphcs)
Ilustras tracng a ra
Algortma Ra Tracng Dasar For each pxel n projecton plane { Create ra from the reference pont passng through ths pxel Intalze NearestT to INFINITY and NearestObject to NULL For ever object n scene { If ra ntersects ths object { If t of ntersecton s less than NearestT { Set NearestT to t of the ntersecton Set NearestObject to ths object } } } } If NearestObject s NULL { Fll ths pxel wth background color } Else { Shoot a ra to each lght source to check f n shadow If surface s reflectve, generate reflecton ra: recurse If transparent, generate refracton ra: recurse Use NearestObject and NearestT to compute shadng functon Fll ths pxel wth color result of shadng functon }
Rekursf pada ra tracng Saat prmar ra (snar ang berawal dar projecton reference pont) dpantulkan atau dbaskan oleh objek, snar pantulan atau basan dsebut dengan secondar ra Secondar ra akan mengalam perlakuan ang sama sepert prmar ra saat menemu objek (dpantulkan dan / atau dbaskan)
Bnar Ra Tracng tree 4 3 3 4 2 3 1 1 2 1
Bnar Ra Tracng tree (cont d) Tracng (pembentukan tree) berhent jka: Sampa maxmum depth (plhan user / kapastas memor) Snar sampa ke sumber cahaa Intenstas pada suatu pxel: akumulas ntenstas mula termnal node (palng bawah) pada tree Intenstas tap permukaan mengalam atenuas (pelemahan) setara dengan jarak permukaan tersebut ke permukaan parent na na (pada tree: node ang tepat d atasna)
Intenstas akhr suatu pxel Merupakan hasl penjumlahan seluruh ntenstas ang telah mengalam atenuas (pada root node) Jka tdak ada permukaan ang berpotongan dengan snar dar pxel, maka pxel tersebut dber nla ntenstas sama dengan latar belakang Jka snar dar pxel berpotongan dengan sumber cahaa (mesk tdak reflektf), maka pxel tersebut dber nla ntenstas sama dengan sumber cahaa
Pantulan Ambent k Dffuse k d ( N. L ) Specular k ( H. N) a s I R u (2u. N) N a n s Jka L berpotongan dengan permukaan lan maka permukaan Jka L berpotongan dengan permukaan lan, maka permukaan tersebut dalam daerah baangan
Pembasan Pembasan Untuk objek dengan materal transparan ) ( N T ) cos (cos r r r N u T r ) cos (1 1 cos 2 2 r r ) ( r r
Contoh Ra Tracng
Radost Memodelkan pantulan dfus dengan lebh akurat Mempertmbangkan transfer energ radan antar permukaan (sesua dengan hukum kekekalan energ) Tngkat kecerahan (brghtness) dan warna dar segala sesuatu tergantung dar segala sesuatu ang lan Lbh Lebh realstk
Efek vsual radost Cahaa puth mengena bola merah Ada pantulan cahaa merah dar bola ke objek lan d sekellngna Lanta puth d sektar bola menjad kemerah merahan
Contoh radost http://en.wkpeda.org/wk/radost_(3d_computer_graphcs)
Teor dasar radost Radost (B): energ per satuan luas ang mennggalkan permukaan per satuan waktu; total energ ang dpancarkan dan ang dpantulkan B da E da R j B j F j da Radost x luas = energ dpancarkan + energ dpantulkan
Teor dasar radost (cont d) Teor dasar radost (cont d) Hubungan tmbal balk: j j j A F A F Setelah dbag dengan da : j j F B R E B j Untuk lngkungan dskrt: n j j F B R E B g g j j j F B R E B 1
Teor dasar radost (cont d) Tap permukaan salng mempengaruh, sehngga perlu menelesakan n persamaan secara smultan: R1F 11 R1F 12... R1F 1 R2 F21 1 R2 F22... R2 F2............ Rn Fn 1 Rn Fn 2... 1 Rn F 1 n 1 1 n 2 nn B1 E B2 E...... Bn En Radost bersfat monokromatk. Untuk RGB, lakukan perhtungan untuk tap warna
Form factor j j F j = energ dar permukaan A ang sampa ke A j energ dar permukaan A ang menebar ke semua arah dalam ruang hemsphere ang melngkup A j j F j 1 cos cos j daj da A r 2 AA j
Asums dlm perhtungan form factor Berlaku hukum kekekalan energ n j1 F 1 j Pantulan cahaa seragam A F j A j F j Permukaan datar atau convex F jj 0