Texturing dan Rendering
Texturing
dan Rendering Blender 3D
1.
Texturing
Texturing
adalah proses pemberian gambar tertentu pada permukaan objek agar terkesan
lebih realistis. Atau bisa diartikan lain adalah proses pemberian karakteristik
permukaan pada objek. Maksud dari karakteristik adalah pewarnaan, kilauan, dan
lainnya. Pada umumnya teksturing bisa disebut juga pemberian warna pada
permukaan objek atau pengecatan, walaupun ada proses yang mengubah geometri
objek. Namun texture mempunyai arti berbeda dengan texturing. Texture dapat
dikatakan sebagai suatu gambar aktual warna dari material yang membantu
menjelaskan atau memperhalus.
Teknik teksturing adalah termasuk langkah pembuatan
suatu proyek gambar 3D (tiga dimensi). Dimana selain teksturing, juga terdapat
langkah lain seperti konseptualitas, modelling, lighting, animasi dan
rendering. Proses texturing ini menentukan karakteristik sebuah objek dari segi
struktur. Untuk materi sebuah object yang akan di buat, bisa digunakan aplikasi
properti tertentu seperti reflectivity, transparency dan refraction. Texture
kemudian bisa digunakan untuk meng-create berbagai variasi warna pattern,
tingkat kehalusan.kekasaran sebuah lapisan object secara lebih detail.Dalam
membentuk sebuah objek pemodelan, texturing bisa dikerjakan secara overlap
dengan modelling, tergantung tingkat kebutuhan.
Terdapat tiga masalah utama yang berhubungan dengan
tekstur yaitu :
1. Segmentasi
Tekstur (Texture segmentation)
Merupakan masalah yang
memecah suatu citra ke dalam beberapa komponen dimana tekstur
dianggap konstan. Segmentasi tekstur melibatkan representasi suatu tekstur, dan
penentuan dasar dimana batas segmen akan ditentukan.
2. Sintesis
Tekstur (Texture synthesis)
Berusaha untuk
membangun region tekstur besar yang berasal dari contoh citra kecil yang ada.
Dengan menggunakan contoh citra akan dibangun model probabilitas tekstur
tersebut, dan kemudian menggambarkannya pada model probabilitas untuk
menentukan tekstur citra.
3. Bentuk
Tekstur (Shape from Texture)
Melibatkan perbaikan
orientasi permukaan atau bentuk permukaan dari tekstur. Di sini diasumsikan
bahwa tekstur “kelihatan sama” pada titik-titik yang berbeda pada suatu
permukaan, ini artinya bahwa deformasi tekstur dari titik ke titik adalah
petunjuk bentuk permukaan.
Berdasarkan
strukturnya, tekstur dapat diklasifikasikan dalam 2 golongan :
1). Makrostruktur
Tekstur makrostruktur
memiliki perulangan pola local secara periodik dalam suatu daerah citra,
biasanya terdapat pada pola-pola buatan manusia dan cenderung mudah untuk
direpresentasikan secara matematis.
2). Mikrostruktur
Pada tekstur
mikrostruktur, pola-pola lokal dan perulangan tidak terjadi begitu jelas,
sehinggga tidak mudah untuk memberikan definisi tekstur yang komprehensif.
Untuk contoh kasus pada
tekturing ini, saya akan mengambil sebuah contoh yaitu pengenalan texture pada image. Texture
pada citra yakni frekuensi perubahan rona pada citra yang dinyatakan
dengan kasar (coarseness), sedang
(regularity), dan halusnya (smoothness) suatu permukaan
pada citra tersebut. Aspek tekstural dari sebuah citra dapat dimanfaatkan
sebagai dasar dari segmentasi, klasifikasi, maupun interpretasi citra. Tekstur
dapat didefinisikan sebagai fungsi dari variasi spasial intensitas piksel
(nilai keabuan) dalam citra. Misalnya hutan bertekstur kasar, semak belukar
bertekstur sedang, sedangkan sawah bertekstur halus.
Secara garis besar, texturing merupakan salah
satu teknik rendering (pembentukan gambar yang mengandung gambar
geometris untuk menghasilkan gambar yang lebih realistis), yang mana shading
dan lighting juga termasuk dalam proses rendering itu.
1. Texture Mapping dan Mapping Coordinate
A. Texture
Mapping
Pemetaan tekstur adalah metode untuk menambahkan detail, tekstur permukaan (bitmap atau raster image), atau warna ke dalam model grafis yang dihasilkan komputer atau 3D. Teknik ini diciptakan oleh Edwin Catmull pada tahun 1974.
Texture merupakan data segi-empat sederhana yang berada pada bidang texture. Bidang texture diwakili oleh dua sumbu koordinat yaitu sumbu s dan sumbu t. Setiap texture akan memenuhi bidang koordinat (0.0,0.0) sd. (1.0,1.0). Nilai individual dari array texture biasanya dikenal dengan istilah texels (texture pixels).
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:

Pemetaan tekstur adalah metode untuk menambahkan detail, tekstur permukaan (bitmap atau raster image), atau warna ke dalam model grafis yang dihasilkan komputer atau 3D. Teknik ini diciptakan oleh Edwin Catmull pada tahun 1974.
Texture merupakan data segi-empat sederhana yang berada pada bidang texture. Bidang texture diwakili oleh dua sumbu koordinat yaitu sumbu s dan sumbu t. Setiap texture akan memenuhi bidang koordinat (0.0,0.0) sd. (1.0,1.0). Nilai individual dari array texture biasanya dikenal dengan istilah texels (texture pixels).
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:
Contoh 1.
Tekstur Objek 3D
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.
B. Mapping Coordinat
Mapping coordinate adalah setiap titik dalam polygon diberi koordinat teksture (yang dalam kasus 2D juga dikenal sebagai UV koordinat) baik melalui tugas eksplist atau menurut definisi prosedural. Gambar lokasi sampling kemudian diinterpolasi di muka poligon untuk menghasilkan hasil visual yang tampaknya memiliki lebih kekayaan daripada yang bisa dicapai dengan sejumlah poligon. 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.
Secara sederhana dalam pemetaan tekstur dilakukan perhitungan koordinat dunia (world coordinates) yang berasal dari koordinat teksturnya. Gambar 2.20 mengilustrasikan pemetaan tekstur.
x = x(s,t)
y = y(s,t)
z = z(s,t)

Dalam memetakan suatu tekstur pada suatu permukaan dikenal 4 komponen yang terlibat.Parametric coordinates, digunakan untuk memodelkan permukaan objek. Texture coordinates, digunakan untuk mengenali posisi dari tekstur yang akan dipetakan. World coordinates, dimana pemetaan dilakukan. Screen coordinates, dimana pemetaan dari tekstur ditampilkan. Gambar 2.21 mengilustrasikan 4 komponen dalam pemetaan tekstur.

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.
B. Mapping Coordinat
Mapping coordinate adalah setiap titik dalam polygon diberi koordinat teksture (yang dalam kasus 2D juga dikenal sebagai UV koordinat) baik melalui tugas eksplist atau menurut definisi prosedural. Gambar lokasi sampling kemudian diinterpolasi di muka poligon untuk menghasilkan hasil visual yang tampaknya memiliki lebih kekayaan daripada yang bisa dicapai dengan sejumlah poligon. 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.
Secara sederhana dalam pemetaan tekstur dilakukan perhitungan koordinat dunia (world coordinates) yang berasal dari koordinat teksturnya. Gambar 2.20 mengilustrasikan pemetaan tekstur.
x = x(s,t)
y = y(s,t)
z = z(s,t)
Dalam memetakan suatu tekstur pada suatu permukaan dikenal 4 komponen yang terlibat.Parametric coordinates, digunakan untuk memodelkan permukaan objek. Texture coordinates, digunakan untuk mengenali posisi dari tekstur yang akan dipetakan. World coordinates, dimana pemetaan dilakukan. Screen coordinates, dimana pemetaan dari tekstur ditampilkan. Gambar 2.21 mengilustrasikan 4 komponen dalam pemetaan tekstur.
2.
Rendering
Rendering adalah proses akhir dari keseluruhan proses
pemodelan ataupun animasi komputer. Dalam rendering, semua data-data yang sudah
dimasukkan dalam proses modeling, animasi, texturing, pencahayaan dengan
parameter tertentu akan diterjemahkan dalam sebuah bentuk output (tampilan
akhir pada model dan animasi).
Rendering tidak hanya digunakan pada game programming,
tetapi juga digunakan pada banyak bidang, misalnya arsitektur, simulator,
movie, spesial effect pada tayangan televisi, dan design visualization.
Rendering pada bidang-bidang tersebut memiliki perbedaan, terutama pada fitur dan
teknik renderingnya. Terkadang rendering juga diintegrasikan dengan model yang
lebih besar seperti paket animasi, tetapi terkadang berdiri sendiri dan juga
bisa free open-source product.
Rendering
Animasi
Rendering
harus dilakukan secara cermat dan teliti. Oleh karena itu terkadang dilakukan
pre rendering sebelum rendering dilaksanakan. Per rendering sendiri ialah
proses pengkomputeran secara intensif, biasanya digunakan untuk pembuatan film,
menggunakan graphics card dan 3D hardware accelerator untuk penggunaan real
time rendering.
Secara umum,
proses untuk menghasilkan rendering dua dimensi dari objek-objek 3D melibatkan
5 komponen utama, yaitu geometri, kamera, cahaya, karakteristik permukaan dan
algoritma rendering.
Metode
Rendering
Ray Tracing Rendering
Ray tracing
sebagai sebuah metode rendering pertama kali digunakan pada tahun
1980 untuk pembuatan gambar tiga dimensi. Ide dari metode rendering ini sendiri
berasal dari percobaan Rene Descartes, di mana ia menunjukkan pembentukan
pelangi dengan menggunakan bola kaca berisi air dan
kemudian merunut kembali arah datangnya cahaya dengan
memanfaatkan teori pemantulan dan pembiasan cahaya yang telah
ada saat itu.
Metode
rendering ini diyakini sebagai salah satu metode
yang menghasilkan gambar bersifat paling fotorealistik.
Konsep dasar dari metode ini adalah merunut
proses yang dialami oleh sebuah cahaya dalam
perjalanannya dari sumber cahaya hingga layar
dan memperkirakan warna macam apa yang
ditampilkan pada pixel tempat jatuhnya cahaya.
Proses tersebut akan diulang hingga seluruh pixel yang
dibutuhkan terbentuk.
Wireframe
rendering
Wireframe
yaitu Objek 3D dideskripsikan sebagai objek tanpa permukaan. Pada wireframe
rendering, sebuah objek dibentuk hanya terlihat garis-garis yang menggambarkan
sisi-sisi edges dari sebuah objek. Metode ini dapat dilakukan oleh sebuah
komputer dengan sangat cepat, hanya kelemahannya adalah tidak adanya permukaan,
sehingga sebuah objek terlihat tranparent. Sehingga sering terjadi
kesalahpahaman antara siss depan dan sisi belakang dari sebuah objek.
Hidden Line
Rendering
Metode ini
menggunakan fakta bahwa dalam sebuah objek, terdapat permukaan yang tidak
terlihat atau permukaan yang tertutup oleh permukaan lainnya. Dengan metode
ini, sebuah objek masih direpresentasikan dengan garis-garis yang mewakili sisi
dari objek, tapi beberapa garis tidak terlihat karena adanya permukaan yang
menghalanginya.
Metode ini
lebih lambat dari dari wireframe rendering, tapi masih dikatakan relatif cepat.
Kelemahan metode ini adalah tidak terlihatnya karakteristik permukaan dari
objek tersebut, seperti warna, kilauan (shininess), tekstur, pencahayaan, dll.
Shaded
Rendering
Pada metode
ini, komputer diharuskan untuk melakukan berbagai perhitungan baik pencahayaan,
karakteristik permukaan, shadow casting, dll. Metode ini menghasilkan citra
yang sangat realistik, tetapi kelemahannya adalah lama waktu rendering yang
dibutuhkan.
Contoh nyata
dari rendering adalah dengan menggunakan software Blender, Vray (3DS Max) dan
OpenGL. Satu trik khusus membuat kita dapat me-render seluruh film yang tengah
kita buat dengan sangat cepat, yaitu render pranala. Bayangkan kita dapat
segera menyaksikan karya kita, memeriksa kualitas animasi dan narasinya, tanpa
perlu menunggu proses render yang terlalu lama. Render pranala memanfaatkan
pustaka OpenGL yang menggambar seluruh antarmuka Blender termasuk viewport 3D
ke layar, sehingga meski ia mengorbankan kualitas visual, jenis render ini
dapat dilakukan dengan sangat cepat.
Contoh
rendering dengan menggunakan OpenGL adalah render pranala. Render ini tidak
dapat langsung dilakukan melalui baris perintah. Blender harus terlebih dahulu
memiliki “kanvas” OpenGL, yang artinya proses render harus dimulai saat
antarmuka grafis tersedia. Eksekusi perintah render dilakukan dengan injeksi
perintah Python, dengan satu-satunya perbedaan adalah fungsi yang dipanggil.
Bila render normal dipanggil dengan fungsi bpy.ops.render.render(animation=True),
maka render OpenGL dipanggil dengan fungsi:
bpy.ops.render.opengl(animation=True,
view_context=False)
Untuk merender dengan menggunakan
Vray (3DS Max), proses rendering dibagi ke dalam 3 tahapan, yaitu pertama untuk
proses rendering RGBA (Red Green Blue Alpha) image, kedua untuk rendering
Ambience Occlusion, dan ketiga untuk rendering shadow. Vray sampai saat ini
telah mengeluarkan versi Cinema 4D.
Referensi:
Komentar
Posting Komentar