• Tidak ada hasil yang ditemukan

Grafika & Pengolahan Citra (CS3214)

N/A
N/A
Protected

Academic year: 2021

Membagikan "Grafika & Pengolahan Citra (CS3214)"

Copied!
44
0
0

Teks penuh

(1)

Grafika & Pengolahan Citra

(CS3214)

12 – Rendering

(2)

3D Photorealism

• Ketepatan pemodelan objek • Proyeksi secara perspektif

• Efek pencahayaan yang natural kepada permukaan tampak: pantulan, transparansi, tekstur, dan

(3)

Illumination model vs

surface rendering

• Model pencahayaan: model untuk

menghitung intensitas cahaya pada satu

titik pada suatu permukaan

• Rendering permukaan: prosedur yang

menerapkan model pencahayaan untuk

mendapatkan intensitas semua titik pada

seluruh permukaan tampak

(4)

Model Pencahayaan

• Metoda untuk menghitung intensitas

cahaya:

– Ambient – Diffuse – Specular

(5)

Model Pencahayaan

Is Id Ia I dist dist Ws Is dist dist Kd Wd Id Ka Wd Wa Ia total Ks ) .(cos . cos . . . ). ( Ф P N L | | ) ( | | ) ( | | ) ( ) ( L Z Z Lz L Y Y Ly L X X Lx Lz Ly Lx L P L P L P L L N. cos

(6)
(7)

Teknik Rendering Permukaan (Poligon)

• Melakukan perhitungan dengan model

pencahayaan untuk semua titik yg tampak

– Ray-tracing

• Melakukan interpolasi untuk titik-titik pada permukaan dari sekumpulan intensitas hasil perhitungan dengan model pencahayaan

(8)

Scan-line algorithms

• Permukaan = poligon

• Aplikasi model pencahayaan:

– Perhitungan intensitas tunggal untuk masing-masing poligon

– Intensitas tiap titik pada poligon didapat dengan cara interpolasi

• Algoritma:

– Flat (constant-intensity) shading – Gouraud shading

(9)

Flat shading

• Intensitas tunggal untuk setiap poligon

– Semua titik dalam poligon ditampilkan dengan intensitas yang sama

• Sering digunakan untuk mendapat tampilan cepat dari objek

• Akurat dengan asumsi:

– Objek = polihedron (bukan aproksimasi kurva) – Sumber cahaya cukup jauh (N.L konstan)

– Pengamat cukup jauh (V.R konstan)

Bisa disiasati dengan memperkecil poligon facet

(10)
(11)

Gouraud shading

• Rendering poligon dengan interpolasi linear terhadap nilai-nilai intensitas vertex (titik

sudut poligon)

• Nilai intensitas untuk tiap poligon disesuaikan dengan poligon lain yang bersebelahan untuk mengurangi discontinuity (seperti yg terjadi pada flat shading)

(12)

Langkah-langkah Gouraud shading

• Tentukan vektor normal satuan rata-rata untuk setiap vertex pada poligon

• Terapkan model pencahayaan ke tiap vertex untuk mendapatkan intensitasnya

• Lakukan interpolasi linear terhadap intensitas vertex untuk mendapatkan intensitas titik-titik lain pada poligon.

(13)

1) Vektor normal untuk vertex V

n k k n k k v

N

N

N

1 1 V N1 N2 N3 N4

 Setelah mendapatkan vektor normal pada

vektor V, dengan model pencahayaan bisa didapat intensitas untuk titik tersebut

(14)

2) Interpolasi intensitas

2 2 1 4 1 1 2 1 2 4 4 I y y y y I y y y y I 5 4 5 4 4 4 5 5 I x x x x I x x x x IP P P y x 3 2 1 Scan line 4 5 P

(15)

Interpolasi secara inkremental

2 1 1 2 2 2 1 1 1 2 1 2 ' y y I I I I I y y y y I y y y y I y x 3 I1 Scan line I’ I I2 y y-1 x x-1

(16)
(17)

Kekurangan Gouraud

• Tampilan highlight tidak sempurna

• Mach band: garis terang atau gelap muncul pada permukaan

– Akibat penggunaan interpolasi linear

Untuk mengurangi efek tersebut:

Perkecil ukuran poligon

(18)

Phong shading

• Interpolasi terhadap vektor normal

• Model pencahayaan diterapkan pada semua titik pada permukaan

• Memberikan highlight yang lebih realistik dan mereduksi efek Mach-band

(19)

Langkah-langkah Phong

• Tentukan vektor normal satuan rata-rata untuk setiap vertex pada poligon

• Lakukan interpolasi linear terhadap vektor

normal ke seluruh permukaan poligon

• Terapkan model pencahayaan sepanjang scan line untuk mendapatkan intensitas setiap titik pada permukaan

(20)

Interpolasi vektor normal

2 2 1 1 1 2 1 2 N y y y y N y y y y N N3 N1 N2 N Scan line

 Untuk mendapatkan vektor-vektor normal antar scan

line dan sepanjang scan line digunakan metode inkremental

(21)
(22)

Evaluasi Phong

• Hasil lebih akurat

– Interpolasi vektor normal

– Model pencahayaan diterapkan pada tiap titik

• Trade-off: butuh ‘biaya’ komputasi yang lebih besar

Fast Phong Shading:

aproksimasi intensitas dengan perluasan deret Taylor

(23)

wireframe Flat shading

(24)

http://www.hlc-games.de/forum/viewtopic.php?f=10&t=56

(25)

Ray-tracing

• Kelanjutan ide Ray-Casting

– ‘Sinar’ diteruskan (memantul ke / menembus objek lain)

– Mencatat semua kontribusi terhadap intensitas suatu titik

– Untuk mendapatkan efek pantulan dan transmisi secara global

• Ray-Tracing dasar:

– deteksi permukaan tampak, efek bayangan, transparansi, pencahayaan dengan beberapa sumber cahaya

• Pengembangan Ray-Tracing:

(26)
(27)
(28)

Ilustrasi ‘tracing a ray’

Projection reference

point Projection plane

(29)

Algoritma Ray-Tracing Dasar

For each pixel in projection plane {

Create ray from the reference point passing through this pixel Initialize NearestT to INFINITY and NearestObject to NULL

For every object in scene {

If ray intersects this object {

If t of intersection is less than NearestT { Set NearestT to t of the intersection

Set NearestObject to this object }

} }

If NearestObject is NULL {

Fill this pixel with background color } Else {

Shoot a ray to each light source to check if in shadow

If surface is reflective, generate reflection ray: recurse If transparent, generate refraction ray: recurse

Use NearestObject and NearestT to compute shading function Fill this pixel with color result of shading function

} }

(30)

Rekursif pada ray-tracing

• Saat primary ray (sinar yang berawal dari

projection reference point) dipantulkan atau dibiaskan oleh objek, sinar pantulan atau

biasan disebut dengan secondary ray

• Secondary ray akan mengalami perlakuan

yang sama seperti primary ray saat menemui objek (dipantulkan dan / atau dibiaskan)

(31)

Binary Ray-Tracing tree

S1 S2 S3 S4 R1 T1 R3 T3 R4 R2 Projection reference point S1 S3 S4 S2 R1 T3 R3 R4 T1 R2

(32)

Binary Ray-Tracing tree (cont’d)

• Tracing (pembentukan tree) berhenti jika:

– Sampai maximum depth (pilihan user / kapasitas memori)

– Sinar sampai ke sumber cahaya

• Intensitas pada suatu pixel: akumulasi

intensitas mulai terminal node (paling bawah) pada tree

• Intensitas tiap permukaan mengalami

atenuasi (pelemahan) setara dengan jarak

permukaan tersebut ke permukaan parent-nya (pada tree: node yang tepat di atasnya)

(33)

Intensitas akhir suatu pixel

• Merupakan hasil penjumlahan seluruh

intensitas -yang telah mengalami atenuasi-(pada root node)

• Jika tidak ada permukaan yang berpotongan dengan sinar dari pixel, maka pixel tersebut diberi nilai intensitas sama dengan latar

belakang

• Jika sinar dari pixel berpotongan dengan

sumber cahaya (meski tidak reflektif), maka pixel tersebut diberi nilai intensitas sama

(34)

R u H N L Incoming ray Reflected ray Light source

Pantulan

• Jika L berpotongan dengan permukaan lain, maka permukaan tersebut dalam daerah bayangan

N N u u R N H k Specular L N k Diffuse I k Ambient s n s d a a ) . 2 ( ) . ( ) . (

(35)

Pembiasan

• Untuk objek dengan material transparan

) cos 1 ( 1 cos ) cos (cos 2 2 i r i r i r i r r i N u T θi θr N u T Incoming ray

(36)
(37)

Radiosity

• Memodelkan pantulan difusi dengan lebih akurat

• Mempertimbangkan transfer energi radian antar permukaan (sesuai dengan hukum kekekalan energi)

• Tingkat kecerahan (brightness) dan warna dari segala sesuatu tergantung dari segala sesuatu yang lain

(38)

Efek visual radiosity

• Cahaya putih mengenai bola merah

• Ada pantulan cahaya merah dari bola ke objek lain di sekelilingnya • Lantai putih di sekitar bola menjadi kemerah-merahan

(39)

Contoh radiosity

(40)

Teori dasar radiosity

• Radiosity (B): energi per satuan luas yang

meninggalkan permukaan per satuan waktu; total energi yang dipancarkan dan yang

dipantulkan j i ji j i i i i idA E dA R B F dA B

(41)

Teori dasar radiosity (cont’d)

• Hubungan timbal balik:

j ji i ij A F A F j ij j i i i

E

R

B

F

B

n j ij j i i i

E

R

B

F

B

1

 Setelah dibagi dengan dAi:

(42)

Teori dasar radiosity (cont’d)

• Tiap permukaan saling mempengaruhi,

sehingga perlu menyelesaikan n persamaan secara simultan: n n nn n n n n n n n E E E B B B F R F R F R F R F R F R F R F R F R ... ... 1 ... ... ... ... ... ... 1 ... 1 2 1 2 1 2 1 2 2 22 2 21 2 1 1 12 1 11 1

 Radiosity bersifat monokromatik.

(43)

energi dari permukaan Ai yang menyebar ke semua arah dalam ruang hemisphere yang

melingkupi Ai

Form factor

Fij = i j A A j i i ij dA dA r A F i j 2 cos cos 1

energi dari permukaan Ai yang sampai ke Aj

Aj dAj Ai dAi Ni Nj r θi θj

(44)

Asumsi dlm perhitungan form factor

• Berlaku hukum kekekalan energi

• Pantulan cahaya seragam

• Permukaan datar atau convex

n j ij F 1 1 ji j ij iF A F A 0 jj F

Referensi

Dokumen terkait

Oleh karena itu implementasi IbW ke desa tersebut merupakan salah satu upaya untuk memberikan informasi potensi wisata yang menarik dan unik Desa Bayung Gede

Kesimpulan dari penelitian ini adalah penggunaan campuran onggok dan ampas tahu terfermentasi dengan kombinasi Aspergillus niger , dan Rhizopus oligosporus sebagai

Penggunaan media yang tepat akan meningkatkan hasil belajar dan membuat proses belajar mengajar menjadi menarik dan menyenangkan, bahan pengajaran akan lebih jelas maknanya

13. Fransa, Anadolu’yu bu savaş sonunda terketmiştir. 1921 Ankara Antlaşması’yla Anadolu dışında kalan topraklardır. Lozan Antlaşması’nda çizilemeyen

– Data mining — inti dari proses penemuan pengetahuan Pembersihan Data Integrasi Data Databases Data Warehouse Task-relevant Data Pemilihan Data Mining Evaluasi

Ada pandangan yang kuat di kalangan para pendidik radikal bahwa pendidikan dan penyelenggaraan proses belajar mengajar—di antaranya dalam bentuk pelatihan—, pada dasarnya

Tujuan pendidikan dan pelatihan manajemen pendidikan dan pelatihan pengolahan bawang merah berbasis masyarakat di desa jatibarang kiduladalah untuk menyelesaikan permasalahan yang

 Jadwal Wawancara di mulai pukul 10.00 – selesai  Bertempat di Media Center KPU Kota Palopo  Pengumuman berdasarkan Abjad... Nama Kecamatan kelamin Jenis Test