Virtual Sculpting Dengan Menggunakan Tool Berbasis Vector ...
-
Upload
khangminh22 -
Category
Documents
-
view
1 -
download
0
Transcript of Virtual Sculpting Dengan Menggunakan Tool Berbasis Vector ...
TesisJudul: Virtual Sculpting Dengan
Menggunakan Tool BerbasisVector Pada Triangle Mesh
Oleh: I Ketut Purnamawan5109201021
Pembimbing: Prof. Ir. Handayani Tjandrasa, M.Sc., Ph.D.
Latar Belakang (1)
• Secara garis besar, pemodelan 3D dapat dikategorikan menjadi dua yaitu:– Functional modeling– Geometric modeling
• Virtual Sculpting merupakan suatugeometric modeling.
Latar Belakang (2)• Bill dan Lodha (Bill dan Lodha, 1994)
memberikan definisi virtual sculpting sebagai pemodelan geometrik yang interaktif dimana tujuan dan cara-cara sculpture tradisional diemulasikan.
• Tujuan yang dimaksud adalah mendesain objek 3D yang free-form.
• Cara-cara yang dimaksud adalah manipulasi secara langsung terhadap bahan dengan menggunakan tangan atau manipulasi secara tidak langsung dengan menggunakan peralatan sculpting (sculpting tools).
Latar Belakang (3)
• Kriteria-kriteria virtual sculpting menurutBill dan Lodha:– Fokus pada pemodelan bentuk yang free-
form.– Karakteristik model yang intuitif, mirip dengan
bahan sculpting pada kehidupan nyata.– Interaktif, real-time.– Manipulasi dan deformasi model
menggunakan virtual tools.
Latar Belakang (4)• Jadi:
– Representasi objek 3D yang digunakan haruslah memiliki karakteristik yang semirip-miripnya dengan bahan-bahan pada kehidupan nyata, dan bisa membentuk bentuk yang sebebas-bebasnya.
– Representasi objek yang digunakan memungkinkan objek dapat dirender dengan cepat, agar tidak menjadi hambatan dalam proses sculpting yang real-time.
– Desain dan mekanisme kerja tool harus seintuitif mungkin dan dapat digunakan untuk melakukan manipulasi bentuk serumit mungkin.
– Komputasi yang dilakukan untuk proses sculpting tidak terlalu komplek, sehingga proses sculpting bisa dilakukan secara real-time.
Latar Belakang (4)• Contoh suatu proses Virtual Sculpting:
– Objek gelas berukir dibentuk dari objek berbentuk tabung.– Objek berwarna hijau adalah tool yang digunakan
Sumber: (Gain dan Marais, 2005)
Latar Belakang (5)
• Model tool yang digunakan menjadi suatuyang tidak terpisahkan dari algoritma yang digunakan.
• Berbagai model tool dan algoritma yang menyertainya telah dikembangkan.
• Sebagian besar interaksi antara tool dengan objek ditentukan dengan menggunakan collision detection.
Latar Belakang (6)
• Contoh penggunaan tool untuk mendeformasipermukaan objek:
Sumber: (Bill dan Lodha, 1994)
Latar Belakang (7)
• Free-Form Deformation (FFD)– Objek dimasukkan ke dalam array titik kontrol B-
Spline tiga dimensi.– Vertex-vertex pada objek diperlakukan sebagai titik-
titik B-Spline.– Ketika satu titik kontrol dipindahkan, maka vertex-
vertex objek yang kena pengaruh titik kontrol tersebut akan ikut berpindah mengikuti persamaan B-Spline.
– Hasil deformasi halus.– Proses deformasi tidak intuitif.– Penggunaan tool sulit dilakukan.
Latar Belakang (8)
• Direct Manipulation FFD (DM-FFD)– Beberapa vertex objek ditransformasi secara
langsung.– Titik-titik kontrol B-Spline ditransformasi berdasarkan
transformasi vertex-vertex yang di transformasisecara langsung.
– Vertex-vertex yang berada di sekitar vertex yang ditransformasi secara langsung ditransformasikanberdasarkan posisi titik-titik kontrol yang baru.
– Karena vertex objek bisa ditransformasi secaralangsung, penggunaan tool menjadi lebih mudah.
– Komputasi yang diperlukan besar.
Latar Belakang (9)
• Tool berbasis vector field– Tool dibentuk dari vector field yang berada di dalam
wilayah suatu bentuk sederhana (seperti bola dankotak)
– Jika vertex-vertex objek berada di dalam wilayah tool, maka vertex-vertex objek tersebut ditransformasikanberdasarkan fungsi vector field di posisi vertex tersebut.
– Agar vertex-vertex objek dapat diketahui apakahberada didalam wilayah tool atau tidak, maka tool harus berbentuk sederhana.
Latar Belakang (10)
• SAM-IAM– Tool dibentuk dari persamaan superelipsoid.– Posisi vertex objek terhadap tool dapat diketahui dengan
memasukkan posisi vertex ke persamaan superelipsoidpembentuk tool.
– Vertex-vertex objex ditransformasikan secara proporsionalberdasarkan transformasi tool.
– Vertex-vertex yang berada didalam tool ditransformasikandengan proporsi penuh (persis sama dengan transformasi tool).
– Vertex-vertex yang berada diluar tool ditransformasikan secaraproporsional menggunakan decay function.
– Semakin dekat terhadap tool semakin besar transformasinya.– Bentuk tool yang dapat dibuat terbatas.
Latar Belakang (11)• SAM-IAM
– Contoh hasil sculpting menggunakan SAM-IAM.
Sumber: (Bill dan Lodha, 1994)
Latar Belakang (12)
• Warp Sculpting– Memanfaatkan distance field untuk
melakukan collision detection.– Jarak vertex-vertex objek ke tool ditentukan
dengan menggunakan distance field.– Vertex-vertex objex ditransformasikan secara
proporsional berdasarkan transformasi tool (sama dengan SAM-IAM).
Latar Belakang (13)• Warp Sculpting
– Contoh proses sculpting dengan menggunakan Warp Sculpting:
Sumber: (Gain dan Marais, 2005)
Latar Belakang (14)• Cara transformasi pada SAM-IAM dan Warp Sculpting
sangat beresiko terhadap terjadinya deformasi tidaksesuai perkiraan.
• Pada SAM-IAM masalah ini berusaha dipecahkandengan cara membagi transformasi besar menjadibagian-bagian kecil.
• Namun menurut Zhang dan Leu (Zhang and Leu, 2009)belum ada hasil penelitian yang dapat menentukan ukuran pembagian transformasi dengan tepat.
• Jika pembagiannya terlalu sedikit, deformasi yang tidak sesuai perkiraan akan tetap terjadi.
• Jika pembagiannya terlalu banyak maka komputasi yang diperlukan akan besar dan melambatkan proses, yang ada akhirnya mengurangi keinteraktifan sistem.
Latar Belakang (15)
• Zhang dan Leu (Zhang and Leu, 2009) menerapkan metode yang hampir sama dengan Warp Sculpting pada implicit object, dengan menambahkan level-set method untuk menentukan deformasi.
• Permasalahan self-intersection yang terdapat pada Warp Scultping bisa terpecahkan. Namun, model yang dihasilkan kasar.
Latar Belakang (14)• Pada penelitian ini diusulkan suatu desain dan
mekanisme tool berbasis vector yang diterapkan pada triangle mesh.
Latar Belakang (14)• Mekanisme collision detection memanfaatkan fungsi ray-
triangle intersection yang terdapat pada Graphics Processing Unit (GPU).
Rumusan Masalah
• Menentukan desain tool yang dapat mendukung komputasi yang minimal, dan dapat digunakan secara intuitif.
• Menentukan mekanisme collision detection yang memerlukan komputasi sesedikit mungkin.
• Menentukan mekanisme deformasi sehingga mekanisme deformasi yang dihasilkan dapat digunakan untuk melakukan manipulasi-manipulasi yang komplek.
Tujuan dan Manfaat Penelitian• Tujuan
– Mengajukan satu metode untuk melakukan virtual sculpting.
• Manfaat– Metode yang diusulkan diharapkan nantinya bisa ditambahkan
pada aplikasi pemodelan 3D, untuk dikombinasikan penggunaannya bersama metode-metode lain yang sesuai, yang mana masing-masing metode mempunyai kelebihannya sendiri-sendiri.
• Kontribusi– Suatu metode virtual sculpting baru.
Triangle Mesh (1)• Triangle mesh merupakan polygon mesh yang mana semua face
pembentuk mesh merupakan polygon berbentuk segitiga.• Polygon mesh merupakan sekumpulan vertex dan edge yang
tersusun sedemikian rupa sehingga membentuk suatu bentuk objek 3D.
• Vertex-vertex dihubungkan oleh edge-edge sehingga membentuk polygon-polygon convex yang disebut face.
• Rangkaian face akan membentuk suatu bentuk objek 3D yang disebut polygon mesh.
Model Struktur Data Polygon Mesh (3)
• Render dynamic meshes– Render dynamic meshes merupakan kombinasi
antara FV meshes dan winged-edge meshes.– Render dynamic meshes berisi vertex list dan face list
seperti pada FV meshes, dan edge list seperti pada winged-edge. Namun informasi empat edge yang terhubung ke edge bersangkutan tidak disertakan, sehingga menghemat ruang penyimpanan.
– Dengan face list seperti pada FV meshes, Render dynamic meshes menjadi mudah untuk dirender.
– Dengan informasi edge seperti pada winged-edge, maka perubahan geometri dapat dilakukan dengan lebih mudah.
Ray-Triangle Intersection (1)(Moller dan Trumbore, 1997)
• Suatu sinar dinyatakan dengan dua komponen penting, yaitu letak sumber sinar dan arah sinar.
• Persamaan titik suatu sinar:
tDOtR +=)(– Dimana O adalah vector posisi sumber sinar, D
adalah vector satuan arah sinar, dan t adalahbilangan real positif.
Ray-Triangle Intersection (2)(Moller dan Trumbore, 1997)
• Suatu bidang segitiga dinyatakan sebagai fungsi dari tiga titik sudutnya.
321)1(),( vVuVVvuvuT ++−−=
– dimana V1, V2, dan V3 adalah titik-titik sudut segitiga, dan (u,v) adalah koordinat barisentrik, yang harus memenuhi u ≥ 0, v ≥0, dan u + v ≤ 1
Ray-Triangle Intersection (3)(Moller dan Trumbore, 1997)
• Suatu sinar akan memotong suatu segitigajika ada nilai t, u, dan v yang memenuhipersamaan berikut.
321)1( vVuVVvutDO ++−−=+
Ray-Triangle Intersection (4)(Moller dan Trumbore, 1997)
• Persamaan diselesaikan sebagai berikut.
⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡
•−×−−•−×
−•−×−
−•−×=
⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡
DVVVOVOVVD
VVVVVO
VVVVDvut
))()(()())((
)())()((
)())((1
122
113
13121
1213
Jadi:
)())(()())()((
1213
13121
VVVVDVVVVVOt
−•−×−•−×−
=
)())(()())((
1213
113
VVVVDVOVVDu−•−×−•−×
=
)())(())()((
1213
122
VVVVDDVVVOv
−•−ו−×−
=
Decay Function (1)• Decay function digunakan untuk
mentransformasikan vertex-vertex yang berada di sekitar vertex-vertex yang ditransforamsikan secara langsung.
• Decay function dimanfaatkan untuk beberapakeperluan, diantaranya:– untuk menentukan bentuk deformasi (pada SAM-IAM)– untuk membentuk lengkungan halus pada pinggiran
area deformasi (pada Warp Sculpting).
Decay Function (2)• Decay function merupakan fungsi jarak yang
menghasilkan nilai antara 0 sampai 1.• Decay function memberikan proporsi
transformasi tertentu kepada vertex-vertex yang berada disekitar titik transformasi berdasarkan jaraknya ke titik transformasi.
• Setiap decay function mempunyai nilai radius yang dapat ditentukan, yang menentukan berapa jarak terjauh dari titik transformasi yang masih terkena pengaruh transformasi.
Decay Function (3)• Decay function yang digunakan pada SAM-IAM:
⎩⎨⎧
→
≤→−+=
otherwiserdif
dw rd
02/))sin(1(
)( 2 ππ
⎩⎨⎧
→
≤→−=
otherwiserdif
dw rd
0)(1
)(2
⎩⎨⎧
→
≤→−=
otherwiserdif
dw rd
0)1(
)(2
⎩⎨⎧
→
≤→−=
otherwiserdif
dw rd
01
)(
⎩⎨⎧
→≤→
=otherwise
rdifdw
01
)(
(Goo)
(Bell)
(Cusp)
(Cone)
(Flat)
Decay Function (4)• Decay function yang digunakan pada Warp
Sculpting:
⎩⎨⎧
→
≤→−=
otherwiserdif
dw rd
0)1)((
)(22
Ide Dasar (2)• Sinar dipancarkan dari pangkal vector-vector tool, dengan arah
searah dengan arah tool.• Sinar lalu dipotongkan pada face-face objek.
– Sinar memotong face objek di titik P, yaitu padakoordinat barisentrik (u,v) pada face tersebut.
– Untuk mendapatkan titik P dalam bentuk koordinatkartesian, dibandingdengan menterjemahkan(u, v) menjadi koordinatkartesian (x,y,z), makaakan lebih cepat jika P didapatkan daripersamaan sinar.
tDOP +=
Ide Dasar (3)
• Vector transformasi didapatkan dari potonganvector-vector tool yang berada didalam objek.
)( OPVpVt −−=
– Vt adalah vector transformasi, Vp adalah vector tool, P adalah titik potong sinar dengan face objek, dan Oadalah titik sumber sinar.
Ide Dasar (4)• Vertex-vertex objek yang face nya tertembus vector tool
ditransformasikan dengan menggunakan vector transformasi.
• Untuk menjaga kehalusan lengkungan pingiran area terdeformasi, maka vertex-vertex yang berada di sekitarvertex yang mengalami transformasi ikutditransformasikan dengan menggunakan decay function.
Ide Dasar (5)
• Perhitungan ray-triangle intersection akan dilakukan sebanyak p x l, dimana p adalah jumlah vector tool, dan l adalah jumlah face objek. Jumlah yang besar.
• Kualitas hasil deformasi sangat tergantungdari kerapatan vector-vector tool.
Algoritma Yang Dioptimasi (1)• Pada pangkal tool akan diisi dengan triangular mesh
yang berbentuk segi empat, yang dibentuk dari dua buah face, dimana semua pangkal vector-vector tool berada di dalam wilayahnya.
• Pada bidang segiempat akan dibuat suatu grid, dengan panjang sisi grid merupakan jarak antar vector tool.
• Pada daerah yang merupakan daerah vector tool, satu sel grid mewakili satu vector tool.
• Pada daerah yang bukan merupakan daerah vector tool, setiap selnya akan berisi informasi jarak ke vector tool terdekat, dan vector tool yang mana yang terdekat.
• Informasi jarak ini akan dipergunakan untuk perhitungan decay function.
Algoritma Yang Dioptimasi (2)
– Grid yang terdapat di pangkal tool. Grid berada di dalam area segiempat yang dibentuk dari dua segitiga. Sel yang berwarna hitam adalah sel yang berisi vector tool. Sel yang berwarna putih adalah sel yang tidak berisi vector tool, dan berisi informasi jarak ke vector tool terdekat.
Algoritma Yang Dioptimasi (4)• Sinar dipancarkan dari vertex-vertex objek yang berada pada region
of influence (ROI), dengan arah berlawanan dengan arah tool. Sinarlalu dipotongkan dengan segiempat yang berada di pangkal tool.
Algoritma Yang Dioptimasi (5)
• Vector transformasi didapatkan dari potonganvector-vector tool yang berada didalam objek.
)( POVpVt −−=
Algoritma Yang Dioptimasi (6)• Vertex-vertex objek tempat asal sinar yang menembus
grid pada sel yang berisi vector tool ditransformasikandengan menggunakan vector transformasi.
• Vertex-vertex objek tempat asal sinar yang menembusgrid pada sel yang tidak berisi vector tool ditransformasikan dengan menggunakan decay function.
• Nilai decay function dihitung berdasarkan nilai jarak yang tersimpan pada masing-masing sel.
Algoritma Yang Dioptimasi (7)
• Perhitungan ray-triangle intersection akan dilakukan sebanyak 2m, dimana m adalah jumlah vertex objek.
• Dengan penerapan ROI, perhitungan ray-triangle intersection menjadi sebanyak 2n, dimana n adalah jumlah vertex objek yang berada di dalam ROI, dan n ≤ m.
Model Struktur Data (1)• Recursive longest-edge bisection dilakukan tepat setelah
dilakukan transformasi pada vertex-vertex.• Winged-edge meshes sangat mendukung agar proses
ini dapat dilakukan dengan cepat.• Namun face list pada winged-edge meshes tidak
diperlukan, karena pada triangle mesh, informasi semua edge yang membentuk face sudah tersedia pada edge list, mengingat face-face pada triangle mesh hanya dibentuk oleh tiga buah edge.
• Untuk tetap menjaga agar proses perenderan tetap bisa dilakukan dengan efisien, maka face list seperti yang terdapat pada FV meshes harus ada.
Skenario Deformasi(Pushing dan Pulling )
• Operasi Pulling
OPVpVVt −+−= max2
)))max(2()(( VpVVpOPVt −+−−−=
dimana Vmax adalah vector tool terpanjang
Skenario Deformasi(Pushing dan Pulling )
• Jika panjang (P-O) lebih kecil atau samadengan panjang Vp+2(Vmax-Vp), makavertex tidak akan ditransformasikan. Sehingga persamaannya menjadi sebagaiberikut.
⎩⎨⎧
→
−<−+→−+−=
otherwiseOPVpVVpifOPVpV
Vt0
)max(2max2
Skenario Deformasi(Pushing dan Pulling )
• Pada operasi pulling, dimungkinkan permukaan yang jauh, atau permukaan yang membelakangi tool, yang tidak dimaksudkan oleh pengguna untuk ditransformasi, ikut tertransformasi.
• Hal ini ditanggulangi dengan memanfaatkan ROI, dan dengan tidakmentransformasikan permukaan objekyang membelakangi tool.
Skenario Deformasi(Pushing dan Pulling )
• Permukaan yang membelakangi tool adalahpermukaan yang vector normal vertex-vertex nya membentuk sudut 90<θ<270.
• Dengan kata lain cos(θ)<0.• Cos(θ) dapat dengan cepat dihitung dengan
memanfaatkan fungsi-fungsi vector yang terdapat pada GPU.
VnVpVnVp •
=θcos dimana Vn adalah vector normal vertex.
Skenario Deformasi(Deformasi real-time dan tidak real-time )
• Proses deformasi tidak real-time yang dimaksud di sini adalah, proses deformasi sebenarnya yang dilakukan pada objek,dilakukan setelah pengguna men-submit deformasi.
• Pada proses secara real-time, setiap toolbergerak deformasi langsung dilakukan pada objek.
Skenario Deformasi(Deformasi berdasarkan arah vector normal)
• Pada deformasi berdasarkan arah vector normal vertex, arah vector transformasi ditentukan oleh arah vector normal vertex-vertex objek.
VnVnVt
Vtn =dimana Vtn adalah vector transformasi berdasarkan vector normal vertex objek, dan Vnadalah vector normal vertex objek.
Skenario Deformasi(Pembentukan sudut tajam )
• Disini diajukan suatu cara untuk membentuk sudut yang tajam pada hasil sculpting.
• Sudut tajam pada hasil sculpting di sini didapatkan dengan cara memindahkan vertex yang terdekat dengan titik lintasan tool, ke titik lintasan tersebut.
• Titik lintsan tool ditentukan oleh vector tool terpanjang, atau disebut dengan puncak tool.
• Titik lintasan tool didapatkan dengan cara memotongkan vector tool terpanjang dengan segitiga-segitiga pembentuk permukaan objek. Tempat terjadinya perpotongan antara vector tool terpanjang dengan permukaan objek merupakan titik lintasan tool.
Penanganan undo• Proses undo dilakukan dengan dua cara.• Pertama adalah pembatalan deformasi yang yang
dilakukan terakhir kali.• Proses ini dilakukan dengan cara membuat duplikat
objek sebelum objek dideformasi.• Jika pengguna membatalkan deformasi, maka objek
akan dikembalikan seperti sebelum dilakukan deformasi dengan cara menjadikan duplikat objek menjadi objek.
• Duplikat objek tidak dapat dibuat dengan banyak, karena akan menghabiskan memori.
• Karena itu, proses pembatalan untuk beberapa langkah ke belakang tidak dapat dilakukan dengan cara ini.
Penanganan undo• Pembatalan untuk beberapa langkah ke
belakang dilakukan dengan cara kedua.• Salinan-salinan objek disimpan pada media
penyimpanan dalam bentuk file.• Proses penyimpanan dalam bentuk file cukup
memakan waktu.• Penyimpanan tidak dilakukan pada setiap
dilakukannya deformasi.• Penyimpanan dilakukan pada setiap beberapa
deformasi, atau pada saat user ingin melakukannya.
Implementasi
• Sistem dibangun dengan menggunakan compiler Microsoft Visual C++ 6.0, dangraphics library Microsoft Direct3D.
Blok Diagram Sistem• Objek 3D yang diolah
melalui proses sculptingbisa berupa objek 3D yang sudah ada, atau berupa objek 3D sederhana yang dibuat oleh sistem.
• Hasil dari proses sculptingadalah objek 3D denganbentuk baru.
• Tool yang digunakan pada proses sculptingbisa dibuat dari objek 3D, gambar sketsa, dan formula.
Proses Sculpting
Proses deformasi
Collision detection menggunakan fungsi Ray-
Triangle Intersection
Mendapatkan vector transformasi dari potongan vector tool yang berada di
dalam objek
Transformasi vertex-vertex berdasarkan vector-vector transformasi dan Decay
Function
Penyesuaian kerapatan vertex
Menggunakan Recursicve Longest-Edge Bisection dan
Shortest-Edge Colapse
Penentuan ROI
Formula(Persamaan
bentuk sederhana,
seperti persamaan
elipsoid, bola, dan kotak)
Gambar Sketsa
Objek 3D
Pembuatan Tool
Pembuatan tool dari formula. Panjang vector-vector tool didapatkan dengan
menggunakan formula.
Pembuatan tool dari gambar sketsa. Panjang vector-vector tool didapatkan dari
nilai gray scale image.
Pembuatan tool dari objek 3D dengan cara memancarkan sampel sinar dari
sebuah bidang datar ke permukaan objek. Panjang vector-vector tool didapatkan dari
jarak sumber sinar ke titik potong sinar dengan permukaan objek
Tool Berbasis Vector
Objek 3D bahan sculpting
Open Object(membuka objek 3D yang sudah
ada)
Create Object(membuat objek 3D sederhana seperti bola,
kotak dan bidang datar)
Objek 3D hasil sculpting
Implementasi(Penyimpanan objek)
• Sistem memberikan fasilitas untuk menyimpan objek dalam bentuk file .x dan file .ply.
• File .x merupakan format standar penyimpanan mesh yang digunakan pada Direct3D.
• File .ply merupakan format penyimpanan triangle mesh yang dikembangkan oleh Stanford University.
Implementasi(Pembuatan objek dasar )
• Objek dasar yang dapat dibuat : bidang segi empat, kotak, bola, silinder dan torus (bentuk donat).
• Sistem memberikan fasilitas untuk membuka objek dari file dengan format .x dan .ply.
Implementasi(Penyimpanan tool)
• Tool disimpan dengan cara menyimpandata-data utama tool ke dalam file binary.
• Data-data yang dapat di-generate daridata utama tidak ikut disimpan.
• Pada awal file, diberi suatu penanda untukmanandai bahwa file tersebut adalah file tool untuk aplikasi virtual sculpting ini.
Implementasi(Penanganan pergerakan tool )
• Ada dua cara yang dipakai untuk mengontrolpergerakan tool.
• Cara pertama dengan menggerakkan tool secara langsung berdasarkan pergerakanmouse. (Memanfaatkan class CD3DarcBall yang disediakan DirectX 9.0 SDK)
• Cara kedua dengan menggerakkan tool berdasarkan titik sentuh cursor mouse padaobjek.
Implementasi(Skenario deformasi )
• Tipe 1 dan 2 adalah untuk melakukan deformasi secara tidak real-time.
• Tipe 1 untuk operasi pushing dan tipe 2 untuk operasi pulling.
• Tipe 3 dan 4 adalah untuk melakukan deformasi secara real-time.
• Tipe 3 untuk operasi pushing, dan tipe 4 untuk operasi pulling.
• Tipe 5 sampai 8 adalah melakukan hal yang sama dengan tipe 1 sampai 4, namun deformasinya berdasarkan vector normal vertex-vertex objek.
• Tipe 9 untuk membentuk sudut tajam pada permukaan objek.
Hasil(Pembentukan tool )
• Tool yang dibuat dengan menggunakan formulayaitu bentuk kotak, elipsoid, dan vector tunggal.
Hasil(Pembentukan tool )
• Tool yang dibuat dengan menggunakan gambar sketsa. Bentuk yang sederhana dan bentuk yang rumit.
Hasil(Pembentukan tool )
• Tool yang dibuat dengan menggunakan gambar sketsa. Nilai grayscale pixel menentukan bentuk tool.
Hasil(Pembentukan tool )
• Tool yang dibentuk dari objek 3D. Perbedaan posisi grid terhadap objek, menghasilkan bentuk tool yang berbeda.
Hasil(Penerapan decay function )
• Pada dasarnya, decay function digunakan untuk membuat lengkungan halus pada pinggiran wilayah terdeformasi.
• Namun pada penggunaan tool vector tunggal, yaitu tool yang hanya dibentuk oleh sebuah vector, decay function menentukan bentuk hasil deformasi.
Hasil(Penerapan decay function)
• Berbagai bentuk lengkungan halus pada pinggirandaerah terdeformasi yang dihasilkan oleh decay function berbeda.
Hasil(Skenario deformasi)
• Deformasi real-time:Ketika tool bergerak, permukaan objek yang dilintasi tool semuanya terdeformasi.
Hasil(Skenario deformasi)
• Deformasi tidak real-time:Ketika tool bergerak, deformasi berdasarkan posisi tool sebelumnyadibatalkan. Selanjutnya, deformasi kembali dilakukan berdasarkanposisi tool terakhir. Ketika pengguna men-submit deformasi, barulahdeformasi dibuat permanen.
Hasil(Skenario deformasi )
• Deformasi berdasarkan arah vector normal.Perbedaan hasil deformasi tidak berdasarkan arah vector normal dengan hasil deformasi berdasarkan arah vector normal.(a): Hasil deformasi tidak berdasarkan arah vector normal.(b): Hasil deformasi berdasarkan arah vector normal. Terlihat deformasiyang dihasilkan mengikuti lengkungan permukaan objek.
(a) (b)
Hasil(Skenario deformasi)
• Pembentukan sudut tajam.Terlihat sudut tajam yang dihasilkan di beberapa bagian masih kurang rapi. Ini menandakan bahwa algoritma untuk membentuk sudut tajam yang diajukan di sini masih kurang baik.
Hasil(Skenario deformasi)
• Pembentukan sudut tajam.Gambar memperlihatkan kerangka objek. Terlihat terdapat face-face yangtumpang tindih. Hal ini menunjukkan terjadinya self-intersection.Algoritma untuk membentuk sudut tajam yang diajukan masih perludiperbaiki.
Hasil(Kecepatan deformasi )
• Kecepatan deformasi diukur pada lingkungan notebook dengan sistem operasi Microsoft Windows XP, proccessor Pentium DualCore 2.0GHz, RAM 1GB, dan GPU Intel GMA4500 dengan memori share.Tabel menunjukkan waktu dan kecepatan deformasi berdasarkan jumlah vertex yang berada di dalam ROI.
4.57 – 8.00125 – 21950000
5.85 – 9.09110 – 17140000
7.09 – 12.82 78 – 14130000
16.13 – 21.2815 – 3220000
31.25 – 66.6715 – 3210000
62.50 – >1000< 1 – 16< 5000
Rentang kecepatan deformasi (kali/detik)
Rentang waktu deformasi
(milidetik)
Jumlah vertex objek di dalam ROI
Hasil(Kemampuan Pemodelan Sistem )
• Objek berbentuk relief dinding. Objek dihasilkan dari bentuk dasar berupa bidang segiempat. Relief dibentuk dengan menggunakan beberapa tooldengan berbagai bentuk, yang dihasilkan dari gambar. Objek dapat dibuat dalam waktu sekitar 10 menit.
Hasil(Kemampuan Pemodelan Sistem )
• Objek berbentuk kepala, yang dihasilkan dari objek dasar berbentuk bola. Objek dibuat dalam waktu kurang dari satu jam oleh tester yang belum berpengalaman menggunakan sistem.
Hasil(Kemampuan Pemodelan Sistem )
• Objek berbentuk burung yang dihasilkan dari objek dasar berbentuk bola.
Kesimpulan• Suatu sistem virtual sculpting telah dibangun dengan
menggunakan metode yang diajukan. Penggunaan fungsi ray-triangle intersection yang terdapat pada GPU memungkinkan komputasi dapat dilakukan dengan cepat. Desain tool yang diajukan memungkinkan dibentuknya tool dengan berbagai bentuk. Dari model –model yang telah dihasilkan sistem, dapat dilihat bahwa kemampuan pemodelan sistem cukup menjanjikan. Dengan kecepatan deformasi yang dihasilkan, pemodelan dapat dilakukan secara real-time. Karakteristik tool yang mirip dengan karakteristik toolpada kehidupan nyata, menyebabkan pemodelan dapat dilakukan secara intuitif.
Saran• Penggunaan mouse standar dengan 2 degree of freedom (DOF)
cukup menyulitkan dalam pemodelan 3D. Kesulitan ini cukup membatasi kreatifitas pengguna. Untuk mengetahui kemampuan pemodelan sistem dengan lebih jelas, kedepannya dirasa perlu untuk melakukan uji coba sistem dengan menggunakan alat input 6DOF, pada sistem komputer yang memang diperuntukkan untuk melakukan komputasi grafis.
Saran• Model tool yang diajukan, dengan operasi pushing-nya memiliki
karakterisitik yang mirip dengan mata bor pada carving machine. Sehingga kedepannya, dimungkinkan untuk melakukan koneksi sistem dengan suatu carving machine. Dengan begitu, akan tercipta suatu sistem pemodelan yang mempunyai kemampuan untuk mencetak model dengan bahan dari kayu.
Daftar Pustaka(1)
• Sederberg, T. dan Parry, S. (1986), Free-Form Deformation of Solid Geometric Models, Computer Graphics (Proc. ACM SIGGRAPH ’86), vol. 20, no 4, hal.161-171.
• Hsu, W.M., Huges, J.F., dan Kaufman, H. (1992), Direct Manipulation of Free-Form Deformation, Computer Graphics (Proc. ACM SIGGRAPH 92), vol. 26, no. 2, hal. 177-184.
• Hilton, T.L. dan Egbert, P.K. (1994), Vector Fields: An Interactive Tool for Animation, Modeling and Simulation with Physically Based 3D Particle System and Soft Objects, Computer Graphics Forum (Proc. Eurographics 94), vol. 13, no. 3, hal. 329-338.
• Bill, J.R dan Lodha, S. (1994), Computer Sculpting of Polygonal Models using Virtual Tools, Technical Report UCSC-CRL-94-27, Baskin Center for Computer Engineering and Information Sciences,University of California, Santa Cruz, US.
• Moller, T. dan Trumbore, B. (1997), Fast, Minimum Storage Ray-Triangle Intersection, Journal of Graphics Tools, vol.2, No. 1, hal. 21-28.
Daftar Pustaka(2)
• Duchaineau, M. Dkk. (1997), ROAMing Terrain: Real-time Optimally Adapting Meshes, IEEE visualization ’97. hal. 81-88
• Singh, K. dan Fiume, E. (1998), Wires: A Geometric Deformation Technique, Proc. ACM SIGGRAPH ‘98, hal. 405-414.
• Gain, J. dan Marais, P. (2005), Warp Sculpting, IEEE Transaction on Visualitation and Computer Graphics, vol. 11, no. 2, hal. 217-227.
• Kil, Y.J., dkk. (2006), 3D Warp Brush Modeling, Computer & Graphics 30, hal. 610-618.
• Zhang, W. and Leu, M.C. (2009), A Spatial Warping Method for Freeform Modeling Based on a Level-set Method, Computer-Aided Design, 41, p. 765-771.