SHADING
MODELLING
Tugas
ini disusun oleh:
KELOMPOK SHADING MODELLING
1. AISYAH SUPRIH ASMORO 50411484
2. IQBAL MAULANA 53411659
3. MUHAMMAD FARIS AL FATIH 54411827
4. SHERLY MARIA PANGAILA 56411737
Kata Pengantar
Puji
syukur kita panjatkan bagi Tuhan Yang Maha Esa yang senantiasa memberikan
kemudahan dalam menyelesaikan segala urusan hingga kami mampu menyelesaikan
buku SHADING MODELLING yang diberikan tugas kepada kami Oleh Ibu Novia Fatimah.
Terima
kasih yang sedalam-dalamnya kepada seluruh anggota kelompok kami dan
partisipasi yang dengan sabar dan ikhlas memberi dukungan jasmani dan rohani dalam setiap tahapan
proses pembuatan buku ini.
Buku
yang berada di tangan anda ini merupakan buku panduan materi bagi
siswa/mahasiswa dan merupakan panduan
dalam mempelajari dalam bidang desain
khususnya mengenalkan konsep-konsep awal desain. Dalam buku pertama materi yang
dirangkumkan mulai grammatikal dasar hingga pembentukan kalimat-kalimat
kompleks secara garis besar beserta rumus-rumus dan algoritma matematika yang
dipakai pada shading modelling.
Akhirnya kami mengucapkan selamat membaca dan berpandang mesra dengan
dunia desain yang telah kami sajikan. Dan tentu tidak lupa kami harapkan kritik
dan saran agar kami senantiasa rajin berbenah untuk memperbaiki kesalahan dalam
penulisan yang belum sempurna.
BAB
I
PENDAHULUAN
1.1 Latar
Belakang Masalah
Pada saat ini, data
atau informasi tidak hanya disajikan dalam bentuk teks, tetapi juga dapat
berupa gambar, audio dan video. Keempat macam data atau informasi tersebut
sering disebut dengan multimedia. Era teknologi saat ini tidak dapat dipisahkan
dari multimedia.
Citra (Image) merupakan istilah lain untuk
gambar. Citra sebagai salah satu komponen multimedia memegang peranan penting
sebagai bentuk informasi visual. Citra mempunyai karakteristik yang tidak
dimiliki oleh data teks, yaitu citra kaya dengan informasi.
Walaupun citra kaya
dengan informasi, namun seringkali citra mengalami penurunan mutu, misalnya
warnanya terlalu kontras, kurang tajam, mengandung cacat dan sebagainya. Tentu
saja citra semacam itu menjadi sulit diinterpretasi oleh manusia karena
informasi yang disampaikan oleh citra tersebut menjadi berkurang. Agar citra
yang mengalami gangguan mudah diinterpretasi, maka citra tersebut perlu
dimanipulasi menjadi citra lain yang kualitasnya lebih baik yaitu dengan
pengolahan citra.
Meskipun perangkat
lunak (software) aplikasi untuk
pengolahan citra sudah semakin banyak bermunculan, tetapi perangkat lunak
tersebut tidak dapat berjalan sesuai dengan yang diinginkan oleh
pengguna/user, disebabkan oleh masalah yang disebutkan diatas tadi. Oleh karena itu, Penulis tertarik untuk membahas
tentang pengoperasian teknik shading modelling menggunakan aplikasi blender dan 3DMax
1.2
Rumusan Masalah
Dalam penulisan buku ini, yang menjadi rumusan masalah adalah bagaimana
membuat suatu
objek dalam aplikasi yang digunakan (blender) dan
3DMax yang di dalamnya
menggunakan berbagai teknik shading modelling yang ada.
1.3
Batasan Masalah
Pembatasan masalah yang penulis uraikan
disini adalah konsep dari shading modeling, penjelasan matematika dan
algoritma, contoh, perangkat lunak yang mendukung serta contoh kasus dari
shading modeling.
1.4
Tujuan Penulisan
Tujuan dari penulisan buku ini adalah
agar pembaca dapat memahami teknik-teknik yang digunakan dalam menggunakan
software blender
dan 3DMax
sehingga,
para pembaca dapat mengaplikasikannya dalam pembuatan suatu objek.
1.5
Metode Penelitian
Metode penelitian dalam pembuatan buku
ini adalah study pustaka, dimana dalam hal ini penulis mencari materi tentang
teknik-teknik yang ada dalam shading modelling, kemudian penulis mencoba
mengaplikasikannya dalam software blender
dan 3DMax
yang
digunakan.
1.6
Sistematika Penulisan
Sebagai gambaran singkat tentang pokok pembahasan
penulisan ini, Penulis akan menguraikannya dalam beberapa bab, dengan
sistematika sebagai berikut:
BAB I PENDAHULUAN
Pada bab ini
dibahas latar belakang masalah, rumusan masalah, batasan masalah, tujuan penulisan, metode
penelitian dan sistematika penulisan.
BAB II KONSEP DAN TEORI PADA
SHADING MODELLING
Bab ini membahas tentang sejarah dari
shading modelling, teknik-teknik yang ada dalam shading modelling, serta
algoritma yang digunakan dalam menggunakan teknik shading modelling.
BAB III PERANGKAT LUNAK
Pada bab ini
berisi pembahasan tahap-tahap pembuatan suatu objek menggunakan
aplikasi blender
dan 3DMax
,
dan menggunakan teknik shading modelling di dalam pembuatannya. Perangkat lunak yang mendukung atau
menerangkan konsep pada bab 2, dan deskripsi perangkat lunak tersebut.
BAB IV KASUS/CONTOH SERTA
MANFAAT
Bab ini berisi kasus atau contoh serta
manfaat yang yang bisa kita dapatkan dari teknik shading modeling pada blender dan 3DMax
BAB V
PENUTUP
Bab ini berisi
kesimpulan dari pembahasan yang telah dikemukakan dalam bab-bab sebelumnya dan
saran-saran yang sifatnya mengarah kepada penyempurnaan dari apa yang telah
disajikan dalam tulisan ini.
BAB
II
KONSEP DAN TEORI PADA SHADING
MODELLING
Shading mengacu pada penggambaran kedalaman
suatu objek dalam model 3D atau ilustrasi dengan mengubah-ubah tingkat dari
kegelapan suatu object(darkness).
Menggambar
Shading merupakan suatu proses yang
digunakan dalam menggambar dengan tingkat darkness
tertentu pada sebuah kertas dengan memakai media yang lebih padat atau
menampilkan bayangan yang lebih gelap untuk area yang lebih gelap dan memakai
media yang tidak terlalu padat atau menampilkan bayangan yang lebih terang
untuk area yang lebih terang. Ada berbagai macam teknik shading, misalnya cross
hatching dimana garis-garis tegak lurus dengan jarak satu sama lain
(kedekatan) yang berbeda-beda digambar pada pola grid untuk membentuk bayangan area. Semakin dekat garis-garis
tersebut, semakin gelap area yang muncul. Begitu pula sebaliknya, semakin jauh
garis-garis tersebut, semakin terang area yang muncul.
Pola-pola yang terang (misalnya
objek yang memiliki area terang dan area berbayang) akan sangat membantu dalam
pembuatan ilusi kedalaman pada kertas dan layar komputer.
Komputer
grafis
Pada komputer grafis, shading mengacu pada proses mengubah
warna berdasarkan sudut terhadap cahaya dan jarak dari cahaya untuk menciptakan
efek photorealistic. Shading dilakukan selama proses
penggambaran.
Sudut terhadap sumber cahaya
Shading mengubah warna tampilan dalam model
3D berdasarkan sudut permukaan terhadap cahaya matahari atau sumber cahaya
lainnya.
Gambar pertama di bawah ini
menunjukkan permukaan-permukaan kotak yang digambar dimana semuanya memiliki
warna yang sama. Garis tepi telah digambar sehingga memudahkan gambar dilihat
dan dibedakan.
Gambar kedua merupakan model yang
sama, namun tidak memiliki garis tepi. Sangat sulit membedakan permukaan kotak
yang satu dengan yang lainnya.
Gambar ketiga memiliki shading dimana membuat gambar menjadi
lebih realistis dan lebih mudah dilihat serta dibedakan.
Sumber cahaya
Ada berbagai jenis cahaya:
·
Ambient light – Ambient light menyinari semua objek dalam suatu scene secara
merata, membuat objek menjadi terang tanpa menambahkan bayangan.
·
Directional light – Directional
light menyinari
semua objek secara merata dari suatu arah tertentu. Ia bagaikan suatu area
terang dengan ukuran dan jarak yang tidak terbatas dari scene. Ada bayangan,
tetapi itu bukan merupakan distance
falloff.
·
Point light – Point light berasal dari satu titik dan
menyebar dalam berbagai arah.
·
Spotlight – Spotlight berasal dari satu titik dan
menyebar mengikuti arah kerucut.
·
Area light – Area light berasal dari satu bidang datar dan
menyinari semua objek dalam arah tertentu yang berasal dari bidang datar
tersebut.
·
Volume light – Volume light merupakan suatu ruang tertutup yang
menyinari objek dalam ruang tersebut.
Shading diinterpolasikan berdasarkan
bagaimana sudut dari sumber cahaya mencapai objek dalam suatu scene. Tentu saja
sumber-sumber cahaya tersebut mungkin dan seringkali dikombinasikan dalam
sebuah scene. Pelukis atau ilustrator kemudian menginterpolasikan bagaimana
cahaya-cahaya ini dikombinasikan dan memproduksi gambar 2D yang akan
ditampilkan di layar.
Distance falloff
Secara teoritis, dua permukaan
paralel disinari jumlah cahaya yang sama dari sumber cahaya yang jauh, seperti
matahari. Walaupun permukaan yang satu jauh, mata kita melihat permukaan
tersebut lebih banyak di ruang yang sama sehingga penyinarannya tampak sama.
Perhatikan gambar pertama dimana
warna pada permukaan depan dari kedua kotak benar-benar sama. Tampaknya ada
sedikit perbedaan ketika kedua permukaan tersebut bertemu, tetapi ini merupakan
ilusi optikal yang disebabkan oleh garis tepi vertikal di bawah dimana kedua
permukaan ini bertemu.
Perhatikan gambar kedua dimana
permukaan kotak tampak lebih terang pada bagian depan dan tampak lebih gelap
pada bagian belakang. Selain itu, permukaan lantai juga tampak semakin gelap
seiring makin jauhnya jarak.
Efek distance falloff membuat gambar tampak lebih realistis tanpa harus
menambahkan cahaya tambahan untuk menimbulkan efek yang sama. Distance falloff dapat dihitung dalam
beberapa cara:
·
Tidak
ada
·
Linier
– Untuk setiap unit x jarak suatu titik dari sumber cahaya, jumlah cahaya yang
diterima adalah unit x dikurangi bright.
·
Kuadratik
– Ini menunjukkan bagaimana cahaya kira-kira bekerja di kehidupan nyata. Suatu
titik yang dua kali jauhnya dari sumber cahaya dibandingkan titik lainnya akan
menerima cahaya empat kali lebih sedikit.
·
Faktor
n – Suatu titik yang jaraknya sebesar unit x dari suatu sumber cahaya akan
menerima cahaya sebesar 1/xn.
·
Fungsi
matematis lainnya juga dapat digunakan.
Flat vs smooth shading
Flat
shading merupakan
teknik pencahayaan yang digunakan dalam komputer grafis 3D. Ia membentuk
bayangan setiap polygon dari suatu objek berdasarkan sudut antara permukaan
normal polygon dan arah dari sumber cahaya, warna-warna respective, dan intensitas sumber cahaya. Ini digunakan dalam
pembuatan gambar dengan kecepatan tinggi dimana menggunakan teknik-teknik shading yang lebih sulit dan secara
perhitungan lebih mahal. Akan tetapi, di akhir abad ke-20, kartu grafis yang
terjangkau menawarkan smooth shading
yang dapat digunakan dalam proses penggambaran cepat, membuat flat shading tidak diperlukan lagi.
Kekurangan dari flat shading adalah ia memberikan tampilan model yang low-polygon. Terkadang tampilan ini dapat
menguntungkan juga, misalnya dalam membuat model objek berbentuk kotak. Pelukis
terkadang menggunakan flat shading
untuk melihat polygon dari model padat yang mereka ciptakan. Teknik-teknik
pencahayaan dan shading lanjutan dan
lebih realistis meliputi Gourad shading
dan Phong shading.
Model shading
menentukan bagaimana suatu permukaan objek muncul dalam kondisi pencahayaan
yang berbeda-beda. Beberapa model matematis dapat digunakan untuk menghitung shading. Setiap model shading memproses relasi dari permukaan
normal terhadap sumber cahaya untuk menciptakan efek shading tertentu.
Menggunakan
warna-warna ambient, diffuse, dan
specular. Model shading ini
membaca orientasi permukaan normal dan menginterpolasikannya untuk menciptakan
tampilan smooth shading. Ia juga
memproses relasi antara normal, cahaya, dan sudut pandang kamera untuk menciptakan
specular highlight.
Hasilnya adalah suatu objek dengan bayangan smooth, permukaan area yang disinari diffuse dan ambient, serta suatu specular
highlight sehingga objek tampak bersinar seperti bola biliar atau bola
plastik. Pemantulan, transparansi, refraksi, dan tekstur dapat diterapkan pada
objek yang menggunakan Phongshader.
Menggunakan
warna-warna ambient dan diffuse untuk menciptakan permukaan matte tanpa specular highlight. Ia menginterpolasikan normal dari permukaan
segitiga yang berdampingan sehingga shading
berubah secara progresif, menciptakan suatu permukaan matte.
Hasilnya adalah suatu objek dengan smooth shading, seperti telur atau bola
ping-pong. Pemantulan, transparansi, refraksi, dan tekstur dapat diterapkan
pada objek yang menggunakan Lambert
shader.
Menggunakan warna-warna diffuse, ambient, dan specular, serta refractive index untuk menghitung specular highlight. Model shading
ini identik dengan model shading Phong,
kecuali bentuk specular highlight-nya
merefleksikan pencahayaan lebih akurat ketika ada sudut tinggi antara kamera
dan cahaya.
Model shading ini berguna untuk tepian yang kasar atau tajam dan untuk
mensimulasikan permukaan logam. Specular
highlight-nya tampak lebih terang dibandingkan model Phong. Pemantulan,
transparansi, refraksi, dan tekstur dapat diterapkan pada objek yang
menggunakan Blinnshader.
Menggunakan warna-warna diffuse, ambient, dan specular, serta refractive index untuk menghitung specular highlight. Ia membaca orientasi permukaan normal dan
menginterpolasikannya untuk menciptakan tampilan smooth shading. Ia juga memproses relasi antara normal, cahaya, dan
sudut pandang kamera untuk menciptakan specular
highlight.
Model shading ini memproduksi hasil yang berada diantara model shading Blinn dan Lambert, serta berguna
untuk mensimulasikan objek yang lembut dan reflektif seperti kulit. Pemantulan,
transparansi, refraksi, dan tekstur dapat diterapkan pada objek yang
menggunakan Cook-Torrance shader.
Karena model shading
ini lebih kompleks untuk dihitung, ia memakan waktu lebih lama dalam pelukisan
daripada model shading lainnya.
// Copyright (c) 2007 PIXAR. All rights reserved. This program or
// documentation contains proprietary confidential information and trade
// secrets of PIXAR. Reverse engineering of object code is prohibited.
// Use of copyright notice is precautionary and does not imply
// publication.
//
// RESTRICTED RIGHTS NOTICE
//
// Use, duplication, or disclosure by the Government is subject to the
// following restrictions: For civilian agencies, subparagraphs (a) through
// (d) of the Commercial Computer Software--Restricted Rights clause at
// 52.227-19 of the FAR; and, for units of the Department of Defense, DoD
// Supplement to the FAR, clause 52.227-7013 (c)(1)(ii), Rights in
// Technical Data and Computer Software.
//
// Pixar Animation Studios
// 1200 Park Avenue
// Emeryville, CA 94608
//
//------------------------------------------------------------------------------------------------------//
//------------------------------------------------------------------------------------------------------//
// SCRIPT: CookTorrance.sl
// AUTHOR: Scott Eaton
// DATE: July 3, 2007
//
// DESCRIPTION: A simple implementation of the Cook-Torrance
// shading model describe in:
// A Reflectance Model for Computer Graphics
// R. L. Cook, K. E. Torrance, ACM Transactions on Graphics 1982
//
//------------------------------------------------------------------------------------------------------//
//------------------------------------------------------------------------------------------------------//
surfaceCookTorrance(
floatKa = 1;
float Ks = .8;
floatKd = .8;
float IOR = 1.3;
float roughness = .2;
color opacity = 1;
colorspecularColor = 1;
colordiffuseColor = (.6, .6, .6);
floatgaussConstant = 100;
){
//the things we need:
// normalized normal and vector to eye
normalNn = normalize(N);
vectorVn = normalize(-I);
float F, Ktransmit;
float m = roughness;
fresnel( normalize(I), Nn, 1/IOR, F, Ktransmit);
color cook = 0;
floatNdotV = Nn.Vn;
illuminance( P, Nn, PI/2 ){
//half angle vector
vector Ln = normalize(L);
vector H = normalize(Vn+Ln);
floatNdotH = Nn.H;
floatNdotL = Nn.Ln;
floatVdotH = Vn.H;
float D;
float alpha = acos(NdotH);
//microfacet distribution
D = gaussConstant*exp(-(alpha*alpha)/(m*m));
//geometric attenuation factor
float G = min(1, min((2*NdotH*NdotV/VdotH), (2*NdotH*NdotL/VdotH)));
//sum contributions
cook += Cl*(F*D*G)/(PI*NdotV);
}
cook = cook/PI;
Oi = opacity;
Ci = (Kd*diffuseColor*diffuse(Nn)+Ks*specularColor*cook) * Oi;
}
Hanya menggunakan warna-warna diffuse untuk mensimulasikan suatu
permukaan logam. Surface’s specular
dikaitkan dengan parameter smoothness
dan “metalness” yang mengontrol
warna-warna diffuse berdasarkan specular ratio seperti pemantulan dan highlight.
Pemantulan, transparansi, refraksi,
dan tekstur dapat diterapkan pada objek yang menggunakan Strauss shader.
Anisotropic
Terkadang disebut juga ward. Model shading ini mensimulasikan permukaan glossy dengan menggunakan warna-warna ambient, diffuse, dan glossy.
Untuk menciptakan efek “digosok” seperti aluminium yang diamplas, dapat
menggunakan orientasi specular color
berdasarkan orientasi permukaan objek. Specular
dihitung menggunakan koordinat UV. Pemantulan, transparansi, refraksi, dan
tekstur dapat diterapkan pada objek yang menggunakan anisotropic shader.
Constant
Hanya menggunakan warna-warna diffuse. Ia mengabaikan orientasi
permukaan normal. Semua permukaan segitiga objek dianggap memiliki orientasi
yang sama dan memiliki jarak yang sama dari cahaya.
Ia menghasilkan suatu objek yang
permukaannya tidak ada shading,
tampak seperti suatu potongan kertas. Ini berguna jika kita ingin menambahkan static blur pada suatu objek sehingga
tidak ada cahaya specular atau ambient. Ia juga mendukung tekstur sebab
tidak ada atribut yang mengganggu definisi tekstur.
Model shading Blinn–Phong (disebut
juga model pemantulan Blinn–Phong atau model pemantulan Phong termodifikasi)
merupakan suatu modifikasi dari model pemantulan Phong yang dikembangkan oleh
Jim Blinn.
Blinn-Phong merupakan model shading default yang
digunakan di OpenGL dan Direct3D fixed-function pipeline (sebelum Direct 3D 10
dan OpenGL 3.1), serta digunakan pada setiap vertex selagi ia melewati pipa grafis; nilai piksel antara diantara
vertice diinterpolasikan oleh Gouraud shading by default, daripada
menggunakan Phong shading yang lebih
mahal.
Dalam Phong shading, secara kontinu harus menghitung ulang produk skalar R * V diantara viewer (V) dan sinar dari sumber cahaya (L) reflected (R) pada suatu permukaan.
Jika kita menghitung halfway vector antara vector viewer dan sumber cahaya,
H= L+V / |L+V|
Kita dapat mengganti R * V dengan N * H dimana N adalah permukaan normal yang telah dinormalisasikan. Pada persamaan di atas, L dan V dan adalah vector yang telah dinormalisasikan, dan H adalah solusi terhadap persamaan V = PH (-L), dimana adalah matriks Householder yang merefleksikan suatu titik di hyperplane yang memiliki origin dan memiliki H normal.
Produk dot ini merepresentasikan cosinus dari suatu sudut yang merupakan setengah dari sudut yang direpresentasikan oleh produk dot Phong jika V, L, N, dan R semuanya berada di bidang datar yang sama. Relasi antara sudut-sudut tersebut diperkirakan benar jika vektor-vektor tidak berada di bidang datar yang sama, terutama ketika sudut-sudutnya kecil. Oleh karena itu, sudut antara N dan H terkadang disebut halfway angle.
Dengan pertimbangan bahwa sudut antara halfway vector dan permukaan normal kemungkinan lebih kecil daripada sudut antara R dan V yang digunakan dalam model Phong (kecuali permukaan ditampilkan dari sudut yang sangat curam atau bersudut besar) dan karena Phong menggunakan (R * V ) , eksponen ditetapkan seperti (N * H) yang lebih mendekati expression sebelumnya.
Untuk permukaan front-lit (pemantulan specular pada permukaan berhadapan dengan viewer), akan menghasilkan specular highlight yang sangat dekat kecocokannya dengan pemantulan Phong. Namun demikian, di saat pemantulan Phong selalu bulat untuk permukaan datar, pemantulan Blinn-Phong menjadi elips ketika permukaan dilihat dari sudut yang curam. Ini dapat dibandingkan terhadap kasus dimana matahari dipantulkan di permukaan laut yang dekat dengan horizon atau ketika lampu lalu lintas yang sangat jauh dipantulkan di trotoar yang basah dimana pantulannya akan selalu tersebar lebih vertikal daripada horizontal
Walaupun model Blinn-Phong menyerupai model Phong, ia menghasilkan model yang lebih akurat secara empiris dari fungsi bidirectional reflectance distribution. (lihat: Experimental Validation of Analytical BRDF Models, Siggraph 2004).
Dalam banyak kasus, model pelukisan ini kurang efisien dibandingkan Phong shading karena ada perhitungan kuadrat dan akar. Jika model Phong original hanya memerlukan pemantulan vektor yang simple, bentuk modifikasi ini memerlukan lebih banyak perhitungan. Namun demikian, karena banyak CPU dan GPU sudah memiliki fungsi kuadrat dan akar yang lebih akurat (sebagai fitur standar), serta instruksi lain yang dapat mempercepat proses pelukisan, masalah waktu sudah tidak terlalu dipermasalahkan lagi.
Model Blinn-Phong akan lebih cepat digunakan dalam kasus dimana viewer dan cahaya tidak memiliki keterbatasan. Ini adalah contoh kasus untuk directional light. Dalam kasus ini, half-angle vector bebas berada di posisi dan permukaan apapun. Vektor dapat dihitung satu kali untuk setiap cahaya, kemudian digunakan untuk keseluruhan frame atau ketika cahaya dan sudut pandang relatif tetap berada di posisi yang sama. Hal ini tidak berlaku bagi vektor cahaya dipantulkan pada model Phong dimana ia vektor bergantung pada rata tidaknya permukaan dan harus dihitung ulang untuk setiap piksel gambar (atau untuk setiap vertex model dalam kasus pencahayaan vertex).
Pada kasus dimana cahaya terbatas, misalnya ketika menggunakan point light, model Phong original akan lebih cepat digunakan. Sampel di bawah ini dalam High Level Shader Language merupakan suatu metode penentuan cahaya diffuse dan specular dari suatu point light. Struktur cahaya, posisi dalam ruang pada suatu permukaan, tampilan arah vektor dan permukaan normal merupakan faktor penentu.


Tidak ada komentar:
Posting Komentar