• Tidak ada hasil yang ditemukan

3D Photorealism. Ketepatan pemodelan objek Proyeksi secara perspektif Efek pencahayaan yang natural kepada permukaan tampak: pantulan, transparansi,

N/A
N/A
Protected

Academic year: 2021

Membagikan "3D Photorealism. Ketepatan pemodelan objek Proyeksi secara perspektif Efek pencahayaan yang natural kepada permukaan tampak: pantulan, transparansi,"

Copied!
39
0
0

Teks penuh

(1)

3D Photorealism

 Ketepatan pemodelan objek

 Proyeksi secara perspektif

 Efek pencahayaan yang natural kepada

permukaan tampak: pantulan, transparansi, tekstur, dan bayangan

(2)

Illumination model vs

surface rendering



Model pencahayaan: model untuk

menghitung intensitas cahaya pada

satu titik pada suatu permukaan



Rendering permukaan: prosedur yang



Rendering permukaan: prosedur yang

menerapkan model pencahayaan

untuk mendapatkan intensitas semua

titik pada seluruh permukaan tampak

(3)

Model Pencahayaan



Ada 3 Jenis Warna yang

mempengaruhi pewarnaan dalam

proses rendering :

 Ambient

 Ambient

 Diffuse

(4)

Model Pencahayaan

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φ = Is Id Ia I dist dist Ws Is dist dist Kd Wd Id Ka Wd Wa Ia total Ks + + = = = + = ) .(cos . cos . . . ). ( φ φ Ф P

(5)

Teknik Rendering Permukaan



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

(6)

Scan-line algorithms



Permukaan = poligon



Aplikasi model pencahayaan:

 Perhitungan intensitas tunggal untuk masing-masing poligon

masing-masing poligon

 Intensitas tiap titik pada poligon didapat dengan cara interpolasi



Algoritma:

 Flat (constant-intensity) shading

 Gouraud shading

(7)

Flat shading

 Intensitas tunggal untuk setiap poligon

 Semua titik dalam poligon ditampilkan dengan intensitas yang sama

 Sering digunakan untuk mendapat tampilan

 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

(8)
(9)

Gouraud shading



Rendering poligon dengan interpolasi

linear terhadap nilai-nilai intensitas

vertex (titik sudut poligon)



Nilai intensitas untuk tiap poligon



Nilai intensitas untuk tiap poligon

disesuaikan dengan poligon lain yang

bersebelahan untuk mengurangi

discontinuity (seperti yg terjadi pada

flat shading)

(10)

Langkah-langkah Gouraud shading



Tentukan vektor normal satuan

rata-rata untuk setiap vertex pada poligon



Terapkan model pencahayaan ke tiap

vertex untuk mendapatkan

vertex untuk mendapatkan

intensitasnya



Lakukan interpolasi linear terhadap

intensitas vertex untuk mendapatkan

intensitas titik-titik lain pada poligon.

(11)

1) Vektor normal untuk vertex

V

=

=

n n k k v

N

N

1

=

=

n k k v

N

N

1

 Setelah mendapatkan vektor normal pada vektor V, dengan model pencahayaan bisa didapat intensitas untuk titik tersebut

(12)

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

I

P P P

+

=

(13)

Interpolasi secara inkremental

2 2 1 1 1 2 1 2 I y y y y I y y y y I − − + − − = 2 1 1 2 ' y y I I I I − − + =

(14)
(15)

Kekurangan Gouraud



Tampilan highlight tidak sempurna



Mach band: garis terang atau gelap

muncul pada permukaan

muncul pada permukaan

 Akibat penggunaan interpolasi linear



Untuk mengurangi efek tersebut:

 Perkecil ukuran poligon

(16)

Phong shading



Interpolasi terhadap vektor normal



Model pencahayaan diterapkan pada

semua titik pada permukaan



Memberikan highlight yang lebih



Memberikan highlight yang lebih

realistik dan mereduksi efek

Mach-band

(17)

Langkah-langkah Phong



Tentukan vektor normal satuan

rata-rata untuk setiap vertex pada poligon



Lakukan interpolasi linear terhadap

vektor normal ke seluruh permukaan

vektor normal ke seluruh permukaan

poligon



Terapkan model pencahayaan

sepanjang scan line untuk

mendapatkan intensitas setiap titik

pada permukaan

(18)

Interpolasi vektor normal

2 1 1 2

N

y

y

y

y

N

y

y

y

y

N

+

=

2 2 1 1 2 1

N

y

y

N

y

y

N

+

=

 Untuk mendapatkan vektor-vektor normal antar scan line dan sepanjang scan line digunakan metode

(19)
(20)

Evaluasi Phong

 Hasil lebih akurat

 Interpolasi vektor normal

 Model pencahayaan diterapkan pada tiap titik

 Trade-off: butuh ‘biaya’ komputasi yang

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

 Fast Phong Shading:

 aproksimasi intensitas dengan perluasan deret Taylor

(21)

wireframe Flat shading

wireframe Flat shading

(22)

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

 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:

(23)
(24)

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

} }

(25)

Rekursif pada ray-tracing



Saat primary ray (sinar yang berawal

dari projection reference point)

dipantulkan atau dibiaskan oleh objek,

sinar pantulan atau biasan disebut

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)

(26)

Binary Ray-Tracing tree

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

(27)

Binary Ray-Tracing tree

(cont’d)

 Tracing (pembentukan tree) berhenti jika:

 Sampai maximum depth (pilihan user / kapasitas memori)

 Sinar sampai ke sumber cahaya

 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 atasparent-nya)

(28)

Intensitas akhir suatu pixel

 Merupakan hasil penjumlahan seluruh

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

 Jika tidak ada permukaan yang berpotongan

 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

(29)

Pantulan

L

N

k

Diffuse

I

k

Ambient

d a a

)

.

(

=

=

 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

s n s d

)

.

2

(

)

.

(

)

.

(

=

=

=

(30)

Pembiasan

 Untuk objek dengan material transparan

θi θr N u T Incoming ray ) cos 1 ( 1 cos ) cos (cos 2 2 i r i r i r i r r i u N T θ η η θ θ η η θ η η −       − = − − =

(31)
(32)

Radiosity

 Memodelkan pantulan difusi dengan lebih akurat

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

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

(33)

Efek visual radiosity

 Cahaya putih mengenai bola merah

 Ada pantulan cahaya merah dari bola ke objek lain di sekelilingnya

(34)
(35)

Teori dasar radiosity

 Radiosity (B): energi per satuan luas yang meninggalkan permukaan per satuan waktu; total energi yang dipancarkan dan yang

dipantulkan dipantulkan

+

=

j i ji j i i i i i

dA

E

dA

R

B

F

dA

B

(36)

Teori dasar radiosity (cont’d)

 Hubungan timbal

balik:

F

ij

A

i

=

F

ji

A

j

 Setelah dibagi dengan dAi:

+

=

j ij j i i i

E

R

B

F

B

=

+

=

n j ij j i i i

E

R

B

F

B

1  Untuk lingkungan diskrit:

(37)

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.

(38)

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

Form factor

Fij =energi dari permukaan Ai yang sampai ke Aj

Aj dAj melingkupi Ai Ai dAi Ni Nj r θi θj i j A A j i i ij dA dA r A F i j

∫ ∫

= 1 cos cos2 π θ θ

(39)

Asumsi dlm perhitungan form

factor

 Berlaku hukum kekekalan

energi

=

=

n j ij

F

1

1

 Pantulan cahaya seragam

 Permukaan datar atau convex

ji j ij i

F

A

F

A

=

0

=

jj

F

Referensi

Dokumen terkait

Bagi golongan Eropa berlaku slatim kodifikasi (B*fl*)iba- gi golongan Bumi Putra pada hakekatnya borloku hukum eu dat meroka sedangkan bagi golongan Timur Aoing haruolah

INTEGRASI MODEL SIMULASI JARINGAN REVERSE LOGISTICS SAMPAH ELEKTRONIK DENGAN METODE DROP-OFF DALAM ANALISIS BIAYA FASILITAS DAUR ULANG SAMPAH ELEKTRONIK HASIL PENGUMPULAN

Peranan sektor pertanian adalah sebagai sumber penghasil bahan kebutuhan pokok, sandang, dan papan, menyediakan lapangan kerja bagi sebagian besar penduduk, memberikan

Komposisi asam amino kolagen kulit ikan tuna yang diekstrak menggunakan asam asetat konsentrasi 0,05 M dan 0,1 M dengan metode hidroekstraksi disajikan pada Tabel 2... Kolanus,

Hipotermia merupakan salah satu kondiri tubuh yang tidak normal, dimana suhu tubuh berada di bawah kondisi normal, hipotermia dapat diatasai dengan menggunakan pakaian hangat dan

Metode angket adalah salah satu metode penelitian dengan menggunakan daftar pertanyaan yang berisi aspek yang hendak diukur, yang harus dijawab atau dikerjakan oleh

Kegiatan IbDM (Ipteks bagi Desa Mitra) berlokasi di Desa Jeruju Besar Kecamatan Sungai Kakap. Mitra kegiatan ini yaitu kelompok PKK, kelompok mitra perikanan dan

Tujuan dari penelitian ini adalah untuk mendapatkan karakteristik, panjang, dan frekuensi pola aliran pada dua fase berdasarkan nilai eksperimental fraksi pada aliran dua fase