Semina Nasional Pascasajana XI ITS, Suabaya 7 Juli 0 Vitual Sculpting Menggunakan Tool Bebasis Vecto Pada Tiangle Mesh I Ketut Punamawan *, Handayani Tjandasa Juusan Teknik Infomatika, Institut Teknologi Sepuluh Nopembe, Suabaya, Indonesia * tutpuna@yahoo.com Juusan Teknik Infomatika, Institut Teknologi Sepuluh Nopembe, Suabaya, Indonesia Abstak Vitual sculpting menjadi salah satu bidang penelitian pada gafika kompute. Bebagai metode vitual sculpting beseta model tool yang menyetainya dikembangkan untuk menciptakan suatu sistem pemodelan yang intuitif, cepat, dan mampu menciptakan model dengan tingkat keumitan tinggi. Masing-masing metode memiliki kelebihan dan kekuangan tesendii. Pada makalah ini diajukan suatu metode untuk melakukan vitual sculpting pada tiangle mesh dengan menggunakan tool bebasis vecto. Tool dibentuk dai vecto-vecto seaah yang dapat dibuat dalam bebagai bentuk. Collision detection antaa tool dan objek memanfaatkan fungsi ay-tiangle intesection yang ada pada gaphics pocessing unit (GPU. Decay function digunakan untuk menciptakan lengkungan yang halus pada pinggian aea tedefomasi. Poses defomasi yang dihasilkan cepat. Sistem yang dibangun memiliki kemampuan pemodelan yang bagus dan intuitif. Dengan model tool yang diajukan, tool dalam bebagai bentuk dapat dengan mudah dibuat dai gamba sketsa. Katakunci: Vitual sculpting, Ray-tiangle intesection, Tiangle mesh, Collision detection.. Pendahuluan Vitual sculpting atau seing disebut compute sculpting meupakan suatu pemodelan geometik. Bill dan Lodha (Bill and Lodha, 994 membeikan definisi vitual sculpting sebagai pemodelan geometik yang inteaktif dimana tujuan dan caa-caa sculptue tadisional diemulasikan. Tujuan yang dimaksud adalah mendesain objek 3D yang fee-fom. Sedangkan caa-caa yang dimaksud adalah manipulasi secaa langsung tehadap bahan dengan menggunakan tangan atau manipulasi secaa tidak langsung dengan menggunakan pealatan sculpting (sculpting tools. Pada Vitual sculpting, ada bebeapa hal yang haus dipenuhi. Yang petama, epesentasi objek yang digunakan hauslah memiliki kaakteistik yang semiip-miipnya dengan bahan-bahan pada kehidupan nyata, dan bisa membentuk bentuk yang sebebas-bebasnya. Kedua, epesentasi objek yang digunakan memungkinkan objek dapat diende dengan cepat, aga tidak menjadi hambatan dalam poses sculpting yang eal-time. Ketiga, desain dan mekanisme keja vitual sculpting tools (untuk selanjutnya, vitual sculpting tools akan disebut dengan tool haus seintuitif mungkin dan dapat digunakan untuk melakukan manipulasi bentuk seumit mungkin. Keempat, komputasi yang dilakukan untuk poses sculpting tidak telalu komplek, sehingga poses sculpting bisa dilakukan secaa eal-time. Bebeapa sistem vitual sculpting telah dikembangkan sebelumnya. Sedebeg dan Pay mengenalkan Fee-Fom Defomation (FFD untuk melakukan solid modeling (Sedebeg and Pay, 986. Pada FFD, penggunaan tool sulit diteapkan kaena manipulasi objeknya besifat tidak langsung. Hsu, Huges, dan Kaufman mengenalkan Diect Manipulation Fee-Fom Defomation (DMFFD, yang meupakan pengembangan dai FFD (Hsu, Huges, dan Kaufman, 99. Pada DMFFD, peneapan tool menjadi lebih mudah. Hsu menggunakan tool sedehana untuk melakukan opeasi pushing dan pulling pada vetex-vetex yang dipilih. Hilton dan Egbet (Hilton dan Egbet, 994 mengenalkan tool bebasis vecto field. Collision detection antaa tool dan objek ditentukan dengan melihat apakah titik-titik objek beada di dalam wilayah tool. Disini bentuk-bentuk tool yang dapat diteapkan tebatas pada bentukbentuk sedehana. Bill dan Lodha (Bill and Lodha, 994 pada sistem yang dinamai SAM- IAM, memanfaatkan pesamaan supekudatik untuk mendefinisikan tool, yang digunakan untuk melakukan pemodelan pada polygon mesh. Bentuk tool pada SAM-IAM juga tebatas pada bentuk-bentuk sedehana. Gain dan Maais pada metodenya yang disebut Wap Sculpting (Gain dan Maais, 005 memanfaatkan distance field untuk melakukan collision detection antaa tool dan objek. Zhang dan Leu (Zhang and Leu, 009 meneapkan metode yang hampi sama
Semina Nasional Pascasajana XI ITS, Suabaya 7 Juli 0 dengan Wap Sculpting pada implicit object, dengan menambahkan metode level-set untuk menentukan defomasi. Pada makalah ini diajukan suatu metode vitual sculpting dengan menggunakan tool bebasis vecto yang diteapkan pada tiangle mesh. Tool dibentuk dai sekumpulan vecto-vecto seaah yang tesusun dalam bentuk tetentu. Mekanisme collision detection-nya memanfaatkan fungsi ay-tiangle intesection yang tedapat pada gaphics pocessing unit (GPU. Dengan menggunakan fungsi yang tedapat pada GPU, poses defomasi dapat belangsung dengan cepat. Tool dapat dibentuk dalam bentuk-bentuk yang umit, dan dapat dengan mudah dibentuk dai gamba sketsa.. Metode. Ray-Tiangle Intesection Fungsi ay-tiangle intesection adalah fungsi untuk menentukan pepotongan antaa suatu sina dengan segitiga. Fungsi ini digunakan dalam poses pencahayaan pada katu gafis. Sina dinyatakan dengan dua buah vecto, yaitu vecto yang menyatakan letak sumbe cahaya, dan vecto satuan yang menyatakan aah sina. Jika O adalah vecto posisi sumbe sina, dan D adalah vecto satuan yang menunjukkan aah sina, maka sina akan mempunyai pesamaan titik sebagai beikut. R ( t = O + td ( Pesamaan titik suatu segi tiga yang dibentuk oleh tiga buah titik V, V, dan V dinyatakan sebagai beikut. T ( u, v = ( u v V + uv + vv3 ( dimana (u,v adalah koodinat baycentic, yang haus memenuhi u 0, v 0, dan u + v. Molle dan Tumboe mengajukan satu metode untuk menentukan pepotongan antaa sina dan segitiga dengan cepat (Molle and Tumboe, 997. Jika sina bepotongan dengan segitiga, maka akan ada nilai t, u, dan v yang memenuhi pesamaan beikut. O + td = ( u v V + uv + vv (3 3 Dai pehitungan yang dilakukan oleh Molle dan Tumboe didapatkan pesamaan sebagai beikut. t (( O ( V ( V3 = u ( D ( V3 ( O ( D ( V V V V 3 ( v (( O V ( V V D Jadi, (( O ( V ( V3 t = ( D ( V V ( V V 3 ( D ( V3 ( O u = ( D ( V V ( V V 3 (4 (5 (6 (( O V ( V D v = ( D ( V3 ( V (7 Jika u 0, v 0, dan u + v, maka sina akan bepotongan dengan segitiga pada titik potong O + td.. Ide Dasa Ide dasa metode yang diajukan adalah mendefomasi objek dengan caa menusukkan tool kedalamnya. Kondisi apakah tool telah menusuk objek dideteksi dengan mencai pepotongan cahaya dengan sumbe O yang teletak pada pangkal vecto-vecto pembentuk tool, dengan aah D yang meupakan aah vectovecto tool, dengan segitiga-segitiga yang membentuk pemukaan objek (faces. Gamba. Poses penusukan tool pada objek Jika satu face ditembus oleh cahaya yang beasal dai vecto tool Vp, pada titik P, dan jaak P dengan O lebih kecil atau sama dengan panjang Vp, maka face tesebut ditembus oleh vecto tool. Vetex objek yang semua face yang dibentuk olehnya ditembus oleh vecto tool dinyatakan beada di dalam tool dan ditansfomasikan menggunakan vecto tansfomasi Vt yang meupakan potongan vecto tool tedekat yang beada di dalam objek. Vt = Vp ( P O (8 Vetex-vetex yang beada dilua tool dan beada disekita titik-titik potong ditansfomasikan menggunakan decay function. Gamba. Defomasi menggunakan potongan vecto-vecto tool yang beada didalam objek Namun dai analisa didapatkan bahwa, dengan mekanisme sepeti ini, komputasi yang dipelukan cukup besa. Kualitas hasil sculpting juga sangat tegantung dai tingkat keapatan vecto tool. Semakin apat vecto tool nya, maka
Semina Nasional Pascasajana XI ITS, Suabaya 7 Juli 0 semakin baik kualitas hasil sculpting nya. Di lain pihak, semakin padat vecto tool nya, maka semakin banyak vecto yang dipelukan, dan semakin besa pula komputasi yang dipelukan. Vt = Vp + P O (9.3 Metode yang Dioptimasi Untuk melakukan optimasi, caa untuk melakukan collision detection diubah. Vecto sina tidak lagi beasal dai pangkal vecto-vecto tool, dan tidak dipotongkan dengan face-face objek, melainkan dipancakan dai vetex-vetex objek dengan aah belawanan dengan aah vecto-vecto tool. Di sini, pangkal tool akan diisi dengan tiangle mesh yang bebentuk segiempat, yang dibentuk dai dua buah face. Mesh segi empat ini tegak luus dengan vectovecto tool, dan semua pangkal vecto-vecto tool beada di dalam wilayah segiempatnya. Pada mesh segiempat tesebut akan dibuat suatu gid, dengan panjang sisi sel gid meupakan jaak anta vecto tool, sepeti yang dipelihatkan pada gamba 3. Pada sel-sel gid yang beisi vecto tool, satu sel gid mewakili satu vecto tool. Pada sel-sel gid yang tidak beisi vecto tool, setiap selnya akan beisi infomasi jaak ke vecto tool tedekat, dan vecto tool yang mana yang tedekat. Jaaknya dihitung bedasakan jaak anta sel. Infomasi jaak ini akan dipegunakan pada pehitungan decay function. Gamba 4. Poses penusukan tool pada objek dengan metode yang dioptimasi. Gamba 5. Defomasi menggunakan potongan vecto-vecto tool yang beada didalam objek pada metode yang dioptimasi. Jika P beada pada sel yang tidak beisi vecto tool, maka vetex objek yang beada pada O ditansfomasikan menggunakan decay function. Jika sina tidak memotong mesh segiempat, maka vetex objek pada O tidak ditansfomasikan. Decay function yang digunakan adalah decay function yang digunakan pada (Gain and Maais, 005 dan (Singh and Fiume, 998, dan yang digunakan pada (Bill and Lodha, 994. Pesamaan-pesamaannya adalah sebagai beikut. d (( d if d (0 Gamba 3. Gid yang tedapat pada pangkal tool yang bebentuk elip. Gid dibentuk dai mesh bebentuk segiempat yang tedii dai dua buah face. Sel yang bewana hitam adalah sel yang beisi vecto tool. Sina yang beasal dai vetex-vetex objek akan dipotongkan dengan segiempat yang beada pada pangkal tool. Sekaang asal sina O adalah posisi vetex objek. Dan aah sina D sekaang belawanan dengan aah vecto-vecto tool. P adalah titik potong sina dengan mesh segiempat. Jika P beada pada sel yang beisi vecto tool, maka vetex objek pada O ditansfomasikan menggunakan vecto tansfomasi Vt. Misalkan Vp adalah vecto tool yang beada pada sel tempat tejadinya pepotongan, maka Vt dapat ditentukan dengan pesamaan beikut. Vt = Vp ( O P π d ( + sin( π / if d d d ( if d d d ( if d d d if d d d if d ( ( (3 (4 (5 dimana d adalah jaak titik objek ke titik collision tedekat, adalah adius decay function yang ditetapkan, dan d adalah poposi tansfomasi yang nilainya 0 d. Pada
Semina Nasional Pascasajana XI ITS, Suabaya 7 Juli 0 metode ini, nilai d adalah jaak sel yang tidak beisi vecto tool, dengan sel yang beisi vecto tool tedekat. Jika Vts adalah potongan vecto tool tedekat, yang masuk kedalam objek, maka vecto tansfomasi yang dihasilkan dai decay function (Vd dapat ditentukan sebagai beikut. Vd = d. Vts (6 Untuk menghemat komputasi, pehitungan tidak dilakukan pada semua vetex objek. Peneapan egion of influence (ROI akan membatasi jumlah vetex yang diposes dengan hanya memposes vetex-vetex yang ada pada ROI. Pada algoitma ide dasa, pehitungan aytiangle intesection akan dilakukan sebanyak p l, dimana p adalah jumlah vecto tool, dan l adalah jumlah face objek. Setelah dilakukan optimasi, pehitungan ay-tiangle intesection akan dilakukan sebanyak m, dimana m adalah jumlah vetex objek. Dan dengan peneapan ROI, pehitungan ay-tiangle intesection menjadi sebanyak n, dimana n adalah jumlah vetex objek yang beada di dalam ROI, dan n m. 3. Hasil dan Pembahasan 3. Bentuk Tool Dengan model tool yang diajukan, tool dapat dibentuk dengan bentuk yang umit, dan dapat dengan mudah dibentuk dai fomula dan gamba sketsa. Gamba 6 menunjukkan contoh bentukbentuk tool yang dapat dibentuk dan diteapkan oleh sistem. dibentuk oleh sebuah vecto, decay function menentukan bentuk hasil defomasi. Gamba 7 menunjukkan bebagai bentuk hasil defomasi menggunakan tool vecto tunggal, dengan menggunakan decay function bebeda-beda. Gamba 7. Bentuk-bentuk hasil defomasi yang dihasilkan oleh decay functions. Bentuk defomasi pada baisan depan dai kii ke kanan betuut-tuut dihasilkan oleh pesamaan (0, (, dan (, pada baisan belakang, dai kii ke kanan betuut-tuut dihasilkan oleh pesamaan (3, (4, dan (5. Pesamaan (0 menghasilkan bentuk gundukan melandai. Pesamaan ( menghasilkan bentuk menyeupai bel. Pesamaan ( menghasilkan bentuk gundukan cembung. Pesamaan (3 menghasilkan bentuk gundukan lancip. Pesamaan (4 menghasilkan bentuk keucut. Pesamaan (5 menghasilkan bentuk gundukan data. Gamba 8 menunjukkan kegunaan decay function untuk membentuk lengkungan halus pada pinggian daeah tedefomasi. Semua bentuk hasil defomasi didapatkan dengan menggunakan tool yang sama, namun dengan menggunakan decay function yang bebeda. Dai kii ke kanan, depan ke belakang, decay function yang digunakan betuut-tuut adalah pesamaan (0, (, (, (3, (4, dan (5. Gamba 8. Lengkungan pinggian yang bebeda, didapatkan dai decay function bebeda. Gamba 6. Bebagai bentuk tool yang bisa dihasilkan dan digunakan oleh sistem. Tool yang bebentuk kotak dan elipsoid, dibuat dengan menggunakan fomula. tool elipsoid diciptakan dengan mengunakan pesamaan elipsoid. Tool yang bebentuk jaum adalah tool yang tedii dai satu vecto tool. Tool-tool dengan bebagai bentuk lainnya, dibuat dai gamba sketsa. 3. Peneapan Decay Function Pada dasanya, decay function digunakan untuk membuat lengkungan halus pada pinggian wilayah tedefomasi. Namun pada penggunaan tool vecto tunggal, yaitu tool yang hanya 3.3 Kemampuan Pemodelan Sistem Kemampuan pemodelan sistem sangat menjanjikan. Gamba 9 dan gamba 0 menunjukkan objek yang dihasilkan oleh sistem. Objek yang ditunjukkan pada gamba 9 adalah objek bebentuk kepala yang dihasilkan dai objek dasa bebentuk bola. Objek dibuat dalam waktu kuang dai satu jam oleh teste yang belum bepengalaman menggunakan sistem. Alat inputan yang digunakan adalah mouse dan keyboad standa. Untuk mengulang membuat objek yang seupa, dapat dilakukan dalam waktu kuang dai tiga puluh menit. Objek yang ditunjukkan pada gamba 0 adalah objek bebentuk elief dinding. Objek ini dihasilkan dai bentuk dasa beupa bidang
Semina Nasional Pascasajana XI ITS, Suabaya 7 Juli 0 segiempat. Relief dibentuk dengan menggunakan bebeapa tool dengan bebagai bentuk, yang dihasilkan dai gamba. Objek dapat dibuat dalam waktu sekita 0 menit. Dengan kecepatan yang didapatkan, sepeti yang telihat pada tabel, poses sculpting menjadi bisa dilakukan secaa bena-bena eal-time. Pada jumlah vetex lebih kecil dai 5000, kecepatan defomasi bahkan mecapai lebih besa dai 60 kali/detik, yang meupakan fekwensi standa efesh ate monito LCD. Pada jumlah vetex sebesa 50000, kecepatan tuun sampai mencapai 4.5 kali/detik. Gamba 9. Objek bebentuk kepala yang dihasilkan oleh sistem. Objek dihasilkan dai objek dasa bebentuk bola. 4. Kesimpulan Suatu sistem vitual sculpting telah dibangun dengan menggunakan metode yang diajukan. Dengan model tool yang diajukan, tool dapat dibentuk dalam bentuk-bentuk yang umit dan dapat dengan mudah dibuat dai gamba sketsa. Kemampuan pemodelan sistem sangat baik. Pemodelan dapat dilakukan secaa intuitif dan eal-time. Dengan menggunakan sistem yang dibangun, pengguna yang belum bepengalaman dapat menciptakan model yang cukup umit dalam waktu yang cukup singkat. Kecepatan defomasi yang dihasilkan oleh metode yang diajukan sangat baik. Kecepatan yang dihasilkan memungkinkan pengguna dapat melakukan pemodelan secaa eal-time dengan bena-bena nyaman. Gamba 0. Objek bebentuk elief pada dinding yang dihasilkan dai bentuk dasa bebentuk bidang segiempat. 3.4 Kecepatan Defomasi Kecepatan defomasi yang dihasilkan sangat mendukung poses pemodelan yang eal-time. Kecepatan defomasi diuku dalam kondisi jumlah vetex objek yang beada dalam ROI bebeda-beda. Tabel menunjukkan kecepatan defomasi bedasakan jumlah vetex yang beada di dalam ROI. Kecepatan defomasi diuku pada lingkungan notebook dengan sistem opeasi Micosoft Windows XP, poccesso Pentium DualCoe.0GHz, RAM GB, dan GPU Intel GMA4500 dengan memoi shae. Tabel : Kecepatan poses defomasi bedasakan jumlah vetex objek yang beada di dalam ROI. Jumlah vetex objek Rentang kecepatan di dalam ROI defomasi (kali/detik 000 >000 5000 6.50 >000 0000 3.5 66.67 0000 6.3.8 30000 7.09.8 40000 5.85 9.09 50000 4.57 8.00 5. Pustaka Sedebeg, T. and Pay, S. (986, Fee-Fom Defomation of Solid Geometic Models, Compute Gaphics (Poc. ACM SIGGRAPH 86, vol. 0, no 4, p.6-7. Hsu, W.M., Huges, J.F., and Kaufman, H. (99, Diect Manipulation of Fee-Fom Defomation, Compute Gaphics (Poc. ACM SIGGRAPH 9, vol. 6, no., p. 77-84. Hilton, T.L. and Egbet, P.K. (994, Vecto Fields: An Inteactive Tool fo Animation, Modeling and Simulation with Physically Based 3D Paticle System and Soft Objects, Compute Gaphics Foum (Poc. Euogaphics 94, vol. 3, no. 3, p. 39-338. Bill, J.R and Lodha, S. (994, Compute Sculpting of Polygonal Models using Vitual Tools, Technical Repot UCSC-CRL-94-7, Baskin Cente fo Compute Engineeing and Infomation Sciences, Univesity of Califonia, Santa Cuz, US. Molle, T. and Tumboe, B. (997, Fast, Minimum Stoage Ray-Tiangle Intesection, Jounal of Gaphics Tools, vol., No., p. -8. Singh, K. and Fiume, E. (998, Wies: A Geometic Defomation Technique, Poc. ACM SIGGRAPH 98, p. 405-44.
Gain, J. and Maais, P. (005, Wap Sculpting, IEEE Tansaction on Visualitation and Compute Gaphics, vol., no., p. 7-7. Zhang, W. and Leu, M.C. (009, A Spatial Waping Method fo Feefom Modeling Based on a Level-set Method, Compute- Aided Design, 4, p. 765-77. Semina Nasional Pascasajana XI ITS, Suabaya 7 Juli 0