BAB IV
KASUS DAN CONTOH
PENERAPAN PERANGKAT LUNAK PADA TEXTURE MODELING
Pada bab sebelumnya bab 2 untuk texture modeling pada
penjelasan sejarah tentang texture modeling di dalamnya di jelaskan bahwa ada
softwere tentang texture mapping yang masuk ke dalam salah satu cabang dari
texture modeling, dan berikut disini akan dijelaskan kasus atau contoh dan
sedikit penjelasan tentang texture mapping dan pemanfaatan softwere atau perangkat lunak ini pada kehidupan sehari-hari.
Objek 3D pada open GL merupakan objek yang lebih hidup
dibandingkan objek 2D. Namun permukaan objek 3D yang polos membuat 3D cenderung
kurang menarik dan kaku. Untuk membuat objek yang lebih hidup pada OpenGL
diperlukan suatu texture mapping. Mapping ialah sebuah bentuk kegiatan untuk
melakukan pewarnaan atau memetakan permukaan geometri pada objek 3D. Sedangkan
Maps adalah bentuk gambar atau warna yang digunakan untuk melapisi objek 3D
pada saat dilakukan mapping. Dengan kata lain pemetaan texture merupakan
pemberian sebuah gambar pada permukaan objek sehingga objek akan tampak
realistis. Texture mapping memungkinkan untuk menaruh gambar pada geometric
primitive tersebut dan sekaligus mengikuti transformasi yang diterapkan kepada
objek. Contohnya apabila sebuah objek kubus tanpa gambar diberi texture
bebatuan pada permukaannya, maka objek tersebut akan tampak memiliki tekstur
kasar seperti batu. Texture pada permukaan objek dapat dilihat dari berbagai
perspective yang berbeda. Beberapa contoh texture pada objek sebagai
berikut:
Filter pembesaran texture berpengaruh pada bagaimana OpenGL
melakukan proses rasterisasi texture saat texture ditampilkan pada jumlah pixel
yang lebih besar atau lebih kecil dari ukuran sebenarnya. Pada Nearest Filtered
Texture, texture yang ditampilkan merupakan hasil pemilihan nilai pixel pada
posisi terdekat. Sedangkan dengan Linear Interpolation Texture (LPT), texture
yang ditampilkan merupakan hasil interpolasi linear antara pixel-pixel
disekitarnya. Pada Mipmapped Texture(MPT), interpolasi linear dilakukan pada
awal secara offline sehingga dihasilkan banyak texture dengan ukuran dari yang
kecil hingga yang besar. LPT dan MPT akan menghasilkan kira-kira hasil yang
sama dengan LPT akan sedikit lebih lambat dari MPT walaupun memori yang
digunakan jauh lebih kecil.
Namun terkadang efek texture yang diinginkan
dapat diperoleh dengan mencampur lebih dari satu texture. Proses pencampuran
lebih dari satu texture disebut dengan istilah blending. Salah satu efek
blending yang paling sederhana adalah dengan memblending texture dengan
warna. Fungsi yang digunakan pada proses blending adalah
glEnable(GL_BLEND).
Implementasi texture pada objek grafika computer terdapat
pada, animasi seperti toy story maupun game animasi.
Konsep Texture Mapping
Texture mapping merupakan teknik pemetaan sebuah tekstur
pada pola gambar wireframe, dimana wireframe yang telah dibuat akan ditampilkan
memiliki kulit luar seperti tekstur yang diinginkan. Beberapa hal yang perlu
diperhatikan dalam pemberian tekstur, diantaranya:
Menentukan tekstur
1. Membaca atau membangkitkan tekstur
2. Menandai tekstur
3. Mengenablekan tekstur
Menandai koordinat tekstur pada vertek
Menentukan parameter tekstur
Teknik-teknik Realisme dalam Kompuer Grafik
1. . Tekstur-Maps
Maps berwujud gambar tekstur 2D yang dituangkan ke permukaan
geometri/objek untuk membuat penampilan objek tersebut tampak halus untuk
detail permukaannya. Pada pengembangan grafik realisme tingkat tinggi
diperlukan lebih banyak lapisan tekstur, agar hasil mapping mendekati kesempurnaan.
Sebuah tekstur maps yang diterapkan (dipetakan) biasanya dipakai untuk
permukaan bentuk objek polygon, proses ini mirip dengan menerapkan texture pada
kertas berpola kotak putih yang polos.Kegiatan texture mapping untuk texture
maps dapat didefinisikan sebagai sebuah metode untuk menambahkan detail tekstur
permukaan (bitmap atau raster image), atau warna yang dihasilkan komputer
grafis atau model 3D. Penerapannya pada grafis 3D dirintis oleh Dr Edwin
Catmull pada proyek Ph.D tesisnya tahun 1974.
2. Environment-Maps
Environtment-Maps ialah maps yang memiliki pewarnaan dengan
banyak gambar (tekstur) yang merekam refleksi global dan pencahayaan pada
objek. Gambar-gambar ini difungsikan sebagai resampled selama proses rendering,
dengan tujuan untuk mengekstrak, dan melihat informasi spesifik yang kemudian
diterapkan sebagai tekstur objek pada permukaan geometri. Maps ini sering
disebut reflection yang berarti tekstur pencahayaan dari benda-benda luar di
sekitar objek, maps jenis ini sangat cocok untuk benda-benda yang memiliki
tingkat refleksi yang sangat tinggi, seperti kaca, dan lain
sebagainya.Environmet mapping pada maps ini memiliki definisi yaitu metode yang
efisien untuk simulasi kompleks permukaan bercermin melalui suatu gambar
tekstur. Tekstur yang digunakan bekerja untuk menyimpan gambar dari lingkungan
sekitar objek yang diberikan. Ada beberapa cara untuk menyimpan tekstur
lingkungan sekitar objek, salah satu metode yang paling umum adalah metode
Spherical Environment Mapping, di mana dalam metode ini suatu tekstur yang
berisi citra lingkungan sekitar akan direfleksikan sebagai bola cermin, dan
kemudian dimasukkan sebagai tekstur objek yang diberi maps.
3. Bump-Maps
Bump maps adalah maps yang memfokuskan permukaan tekstur
pada objek, dengan menggunakan maps ini, permukaan geometri/objek akan terlihat
berbeda dan unik, tidak seperti objek-objek yang memiliki permukaan normal pada
umumnya. Rumus pekerjaan dari maps ini akan menerapkan bidang untuk intensitas
dalam maps yang menunjukkan tingkat rendah tingginya suatu permukaan objek,
fungsi maps ini akan mengacaukan permukaan objek yang normal, sehingga
menimbulkan kesan unik ketika hasilnya sudah di-render.Untuk kegiatannya, bump
mapping adalah sebuah teknik grafis komputer di mana pada setiap pixel untuk
permukaan normal objek, akan diberikan efek tidak halus dan diterapkan sebelum
melakukan perhitungan iluminasi. Hasilnya, objek yang diberi maps akan lebih
kaya, serta lebih rinci untuk representasi permukaan objek dan lebih mirip pada
permukaan alam.
4. Normal-Maps
Maps ini serupa dengan bump-maps, perbedaannya adalah
fungsionalitas yang ada pada normal maps, maps ini secara alami akan
menghasilkan bentuk permukaan yang tidak halus tanpa menggunakan lebih banyak
penambahan atau pengurangan poligon pada objek.Dalam dunia grafik komputer 3D,
normal mapping pada maps ini bisa disebut " Dot3 bump mapping ",
definisinya adalah sebuah teknik yang digunakan untuk ”berpura-pura”
menambahkan efek tidak halus pada permukaan objek. Kenapa disebut
”berpura-pura” ? Hal ini disebabkan karena mapping ini bekerja dengan
menambahkan rincian tidak halus pada permukaan objek tanpa menggunakan poligon.
Normal mapping biasanya diakurasi sebagai sebuah gambar RGB yang berhubungan
dengan koordinat X, Y, dan Z dari permukaan normal suatu objek. Penggunaan umum
teknik ini adalah untuk lebih meningkatkan tampilan dan detail dari model
poligon rendah dengan menghasilkan peta normal dari model poligon yang tinggi.
5. Shadow-Maps
Shadow maps yaitu maps yang menghasilkan suatu bayangan
tekstur pada objek dengan menangkap siluet objek tersebut dari sumber cahaya
yang terlihat. Maps ini sangat sering dipakai oleh pengembang grafik 3D, karena
efek yang dihasilkan seolah-olah menunjukkan objek tersebut sangat realistis,
dan disebabkan adanya bayangan dari sumber cahaya yang ada.Fungsi kerjanya yang
berkonsep shadow mapping adalah proses di mana bayang-bayang ditambahkan ke
grafik komputer 3D. Konsep ini diperkenalkan oleh Lance Williams pada tahun
1978, dalam sebuah makalah yang berjudul "Casting curved shadows on curved
surfaces". Sejak saat itu, teknik ini telah digunakan baik dalam
pra-render adegan, dipakai secara realtime, atau bahkan diterapkan ke banyak
konsol dan PC high-end game.
Berikut ini adalah macam-macam tekstur:
· GL_TEXTURE_1D:
semua gambar dalam tekstur ini 1-dimensi. Memiliki lebar, tapi
tidak memiliki ketinggian atau kedalaman.
· GL_TEXTURE_2D:
semua gambar dalam tekstur ini 2-dimensi. Memiliki lebar
dan tinggi, namun tidak punya kedalaman.
· GL_TEXTURE_3D:
semua gambar dalam tekstur ini 3-dimensi. Memiliki lebar,
tinggi,dan kedalaman.
· GL_TEXTURE_RECTANGLE:
Gambar dalam tekstur ini (hanya satu gambar padamipmapping) 2-dimensi. Koordinat
tekstur yang digunakan untuk tekstur ini tidakdinormalisasi.
· GL_TEXTURE_BUFFER:
Gambar dalam tekstur ini (Hanya satu gambar adamipmapping) 1-dimensi. Penyimpanan data berasal
dari Buffer Object.
· GL_TEXTURE_CUBE_MAP: terdapat
6 set gambar 2D berbeda, dengan ukuran yang sama. Berbentuk
seperti 6 sisi kubus.
· GL_TEXTURE_1D_ARRAY: Gambar
dalam tekstur ini semua 1-dimensi. Namun,berisi
beberapa set gambar 1-dimensi, semua dalam satu tekstur. Panjang arraybagian
dari ukuran tekstur itu.
· GL_TEXTURE_2D_ARRAY: Gambar
dalam tekstur ini semua adalah 2-dimensi.Namun, mengandung beberapa
set gambar 2 dimensi, semua dalam satu tekstur.Panjang array bagian
dari ukuran tekstur itu.
· GL_TEXTURE_CUBE_MAP_ARRAY: Gambar
dalam tekstur ini merupakan pemetaan kubus. Berisi beberapa
set peta kubus yang kesemuanya berada dalamsebuah tekstur. Panjang Array * 6 (jumlah sisi kubus) merupakan
bagian dari ukurantekstur.
· GL_TEXTURE_2D_MULTISAMPLE:
Gambar dalam tekstur ini (hanya satu gambarada mipmapping) adalah
2-dimensi. Setiap pixel dalam gambar ini berisi beberapasampel bukan
hanya satu nilai.
· GL_TEXTURE_2D_MULTISAMPLE_ARRAY: Menggabungkan 2D
array dan jenismultisample 2D. Tidak ada mipmapping.
sangat informatif, thanks gan artikelnya, ijin sedot...
BalasHapus