• Tidak ada hasil yang ditemukan

BAB II KAJIAN PUSTAKA

N/A
N/A
Protected

Academic year: 2021

Membagikan "BAB II KAJIAN PUSTAKA"

Copied!
21
0
0

Teks penuh

(1)

1 BAB II

KAJIAN PUSTAKA

2.1 State of the Art

Aplikasi Dalang berbasis Android merupakan sebuah aplikasi yang berkaitan dengan pemahaman masyarakat Bali terhadap cerita dan pengarangan cerita wayang yang merupakan ciri khas adat Bali. Aplikasi Dalang berbasis Android ini dibuat agar masyarakat Bali khususnya generasi muda dapat melestarikan profesi dalang.

Game wayang telah dipaparkan pada jurnal yang berjudul “Rancang

Bangun Game Pertempuran Lakon Wayang Sebagai Sarana Pengenalan Tokoh Pewayangan Indonesia” yang disusun oleh Aditya Yoga Prahara dan Taqwa Hariguna. Jurnal tersebut membuat sebuah aplikasi game bertempur lakon wayang yang menggunakan tombol maju mundur dan dapat bertempur layaknya manusia biasa dengan teknik memukul dan menendang. (Aditya, 2013)

Game ini dilatarbelakangi akibat masuknya budaya luar yang

mengakibatkan masyarakat Indonesia lupa dengan kearifan lokal, nilai-nilai keluhuran pada zaman dahulu. Menurut Aditya yoga prahara masyarakat Indonesia kurang tertarik akan cerita pewayangan Indonesia. Masyarakat Indonesia lebih tertarik akan cerita fantasi yang berasal dari luar negeri dan budaya barat yang masuk ke dalam Indonesia. Akibat dari hal tersebut yaitu mengakibatkan terbuangnya cerita pewayangan dari Indonesia dan akhirnya cerita pewayangan tersebut akan hilang dan dapat di klaim oleh negara lain jika masyarakat belum menyadari bahwa pentingnya untuk melestarikan budaya asli Indonesia.

Masyarakat yang masih peduli dengan pentingnya melestarikan budaya asli indonesia telah melakukan berbagai macam cara untuk mengenalkan kembali cerita pewayangan kepada generasi muda Indonesia diantaranya yaitu, dengan tulisan, gambar ataupun animasi. Aditya yoga prahara mengenalkan kembali cerita pewayangan dalam bentuk sebuah game. Game yang dibuat oleh Aditya Yoga Prahara yaitu game pertempuran lakon wayang. Game ini seperti game fighter biasanya. Tetapi, yang membedakannya yaitu karakter yang digunakan yaitu

(2)

karakter pewayangan sehingga secara tidak langsung Aditya Yoga Prahara membantu generasi muda untuk mengenal cerita pewayangan Indonesia.

Ensiklopedia wayang telah dipaparkan pada jurnal yang berjudul “Rancang Bangun Aplikasi Ensiklopedia Wayang Berbasis Android” yang disusun oleh Sani Cahyadi Firdaus. Jurnal tersebut membuat sebuah ensiklopedia wayang sebagai media pembelajaran yang menjadi alternatif belajar bagi pelajar dan mahasiswa.(Sani Cahyadi, 2013)

Ensiklopedia yang dirancang oleh Sani Cahyani Firdaus berbeda dengan ensiklopedia biasanya. Ensiklopedia yang dirancang ini dapat diakses kapanpun tanpa menggunakan koneksi internet sehingga dapat memudahkan pengguna untuk mengaksesnya. Ensiklopedia ini dibangun pada platform Android yang menjelaskan tentang definisi wayang, asal usul wayang, istilah-istilah yang sering digunakan di dunia wayang, kisah-kisah wayang, dan tokoh-tokoh pewayangan Mahabaratha.

Implementasi teknik sabetan telah dipaparkan pada jurnal yang berjudul “Implementasi Teknik Sabetan melalui Kinect (Studi Kasus Pengenalan Gerak Wayang Kulit Tokoh Pandawa)” yang disuun oleh Toto Haryadi. Jurnal tersebut akan mengimplementasikan sensor Kinect dengan menggunakan teknologi motion

capture melalui penelitian dan eksperimen.(Toto,2013)

Metode yang digunakan dalam penelitian ini yaitu, pengumpulan data, analisa data dan perancangan aplikasi berbasis multimedia (MDLC) dan teori interaksi desain. Data dikumpulkan dengan menggunakan metode deskriptif kualitatif, wawancara, observasi, dokumentasi dan studi literatur. Penelitian ini menghasilkan prototype dari aplikasi interaktif “Dalang Virtual” yang mengimplementasikan variasi teknik gerakan wayang pandawa yang pada umumnya digunakan dalam pertunjukan wayang.

Teknologi baru pada pendidikan dan proses mengajar tidak hanya berkontribusi pada proses kognitif tetapi juga untuk tingkat emosional siswa. Dalam sebuah permainan kita melihat pengaruh unur-unsur lain seperti desain, estetika, plot, serta nilai-nilai sikap dan perilaku. Contohnya, permainan puzzle dan

(3)

permainan daya ingat yang digunakan untuk membangun pembentukan pendidikan untuk anak-anak dan dewasa.

Penelitian ini telah berhasil mamasukkan teknologi ke dalam dunia pendidikan dengan menggunakan teknologi yang interaktif dan menarik untuk anak-anak. Maka dari itu Aplikasi Pewayangan yang dibuat mengambil teknologi tersebut agar aplikasi pewayangan ini dapat berhasil seperti media pembelajaran matematika pada penelitian ini.

Storytelling wayang kulit ini telah dipaparkan pada jurnal yang berjudul

“Innovation in Wayang Kulit Storytelling using Digital Interactive Method” yang disusun oleh Muhammad Colmann Abdullah. Jurnal tersebut membuat sebuah Cerita wayang kulit dengan menggunakan metode digital interaktif. (Muhammad, 2014).

Kemajuan teknologi sangat memungkinkan antarmuka pengguna yang interaktif. Penelitian ini akan memberikan wawasan dalam mengenali karakter dalam wayang kulit Kelantan. Wayang kulit Kelantan merupakan sebuah wayang kulit yang berasal dari Malaysia. Wayang kulit Kelantan ini juga dimainkan oleh sebuah dalang yang bernama Tok Dalang. Penelitian ini membuat sebuah dongeng wayang kulit dengan memanfaatkan media digital yang inovatif sehingga anak-anak dapat mengenali dan mempelajari wayang kulit Kelantan.

2.2 Sejarah Pewayangan Bali

Sejarah pewayangan hingga saat ini belum diketahui penyebab, asal usul, bentuk dan proses perkembangannya sehingga menjadi seperti pertunjukan wayang saat ini. Banyak hipotesis dari peneliti yang mengatakan bahwa wayang digunakan sebagai sarana dalam pemujaan roh-roh leluhur. Hipotesis tersebut dapat diterima oleh masyarakat dan hipotesis tersebut telah berlaku di banyak daerah yang mengenal wayang. (Ketut Rota, 1977)

Beberapa prasasti yang ditemukan di Bali yang menyebutkan keberadaan wayang tidak dapat membantu usaha peneliti untuk mengetahui secara pasti bagaimana wujud /bentuk pertunjukan wayang pada abad- abad sebelumnya, Seperti yang telah disebutkan oleh Drs Ketut Rota pada tahun 1977. Prasasti yang

(4)

ditemukan peneliti hanya dapat diketahui bahwa pertunjukan wayang pada sekitar abad IX – XI merupakan suatu profesi diantara profesi yang dilakukan oleh masyarakat pada zaman itu. Berikut ini merupakan prasasti – prasasti yang ditemukan oleh beberapa peneliti :

1. Prasasti Bebetin (Tahun 818 Caka / 896 M)

Prasasti bebetin ditemukan oleh Dr. R. Goris yang ditemukan pada tahun 896 Masehi menyatakan bahwa :

“. . . pande tambaga, pamukul, pagending, pabujing, papadaha, barbhangci, partapukan, parbwayang, panekan, dihyang api, tikasanna, metani kasiddhan dudukyan hu . . . . .”

Prasasti bebetini ini menyatakan beberapa kelompok orang yang menggambarkan profesi tertentu seperti, pande tambaga sebagai pandai tembaga, pamukul sebagai penabuh gambelan, pagending sebagai juru kidung (juru gending), pabunjing sebagai juru tabuh angklung bambu, papadaha sebagai juru tabuh kendang, parbhangai sebagai juru tiup suling, partapukan sebagai para penari topeng, dan parbwayang sebagai orang yang mempertunjukkan wayang (Dalang).

2. Prasasti Dawan (Tahun 975 Caka / 1053 M)

Prasasti Dawan yang berangka tahun 975 Caka atau 1053 Masehi menyatakan :

“. . . yan hana agending ambaran ku 1 amukul sa 3 pawehanya ing satuhan aringgit atali tali banjuran wehanya ku 1 ri satuhan . . . .”

Prasasti dawan tersebut memiliki arti setiap juru gending yang memainkan kidungnya dihadapan raja maka akan diberikan upah sebesar 2 kupang, juru kidung yang nglawang diberikan upah 1 kupang, juru tabuh gambelan diberikan 3 kupang, dan perkumpulan wayang diberikan 1 kupang.

3. Prasasti Blantih (Tahun 980 Caka / 1058 M)

Prasasti Blantih yang berangka tahun 980 Caka atau 1058 Masehi menyatakan :

(5)

“. . . mang kana yan hana abanwal, atapukan, aringgit, pirus, menmen, I haji maranmak ku 2 pawehanya I riya anuling ku 3, agending ambaran maranmak ku 2 pawehanya I riya ameling ku 1, amukul ku 2 pawehanya i riya . . . . .”

Prasasti Blantih ini menyatakan bahwa jika ada pertunjukan lawak, topeng, wayang, badut, (pemain drama) yang bermain dihadapan raja maka akan diberi upah 2 kupang, juru kidung 2 kupang, juru suling 1 kupang, juru tabuh 2 kupang.

Prasasti - prasasti yang telah disebutkan sebelumnya menunjukkan bahwa sekitar tahun 896 Masehi pertunjukkan wayang di Bali telah berkembang dalam keadaan yang sudah teratur. Keahlian seseorang dalam memainkan wayang juga telah menjadi suatu profesi tersendiri. Drs Ketut Rota dapat menduga bahwa sebelum tahun 896 permainan wayang sudah berdiri walaupun dalam wujud yang sederhana. (Ketut Rota, 1978)

2.3 Wayang

Wayang merupakan sebuah seni pertunjukkan yang menayangkan pertunjukan boneka-boneka dua dimensi yang sebagian besar dibuat menggunakan kulit yang ditatah dan diukir. Wayang dipertunjukkan kepada khalayak masyarakat dengan seorang Dalang. Wayang memiliki karakter yang berbeda-beda sesuai dengan bentuk dan ukirannya. Wayang kulit biasanya menggunakan tokoh-tokoh dari cerita Mahabharata, Ramayana, Cupak dan Grantang, dan lain sebagainya.

2.4 Dalang

Dalang merupakan orang yang meengatur alur cerita dari sebuah pertunjukan Wayang. Dalang dikenal juga dengan sebutan pakeliran, pengertian pakeliran yaitu orang yang menyajikan peristiwa-peristiwa atau adegan yang ada di dalam suatu cerita atau lakon. Pertunjukan Wayang Kulit dikendalikan oleh seorang Dalang. Dalang berperan sebagai sutradara, pemeran, sekaligus stage manager di dalam sebuah pertunjukan Wayang. Dalang juga merupakan figure sentral yang menentukan segala sesuatu yang berhubungan dengan jalannya sebuah pertunjukan

(6)

Wayang, jadi seberapa menarik pertunjukan Wayang tergantung dari seberapa menarik dan unik dari seorang Dalang. (Bambang Murtoyoso,2007)

Seni Pedalangan memiliki empat unsur penting yang harus dimiliki dan dikuasai oleh seorang Dalang. Berikut ini merupakan empat unsur penting yang harus dikuasai oleh seorang dalang :

1. Bahasa

Bahasa merupakan unsur yang paling penting yang harus dikuasai oleh seorang Dalang. Dalang harus memperhatikan tutur kata yang digunakan untuk memainkan sebuah Wayang. Wacana yang diucapkan oleh seorang Dalang disebut dengan basa pedalangan. Bahasa yang digunakan yaitu Bahasa Bali halus sesuai dengan sor singgih bahasanya. Bahasa yang digunakan oleh Dalang menjadi sebuah media komunikasi antara Dalang dengan penonton, sehingga ungkapan Dalang dapat berupa narasi dan dialog dari tokoh-tokoh Wayang.

2. Suara

Suara merupakan sebuah ungkapan yang dilantunkan oleh seorang Dalang. Ungkapan dapat berupa wacana, vokal Dalang, maupun karawitan. Ungkapan dalam sebuah pertunjukan Wayang tidak hanya sebagai sarana komunikai, melainkan sebuah ungkapan yang mengacu pada wujud, karakter, dan suasana tokoh Wayang. Pengolahan suara sangat menentukan sebuah keberhasilan dari pertunjukan Wayang karena dengan pengolahan suara yang tepat akan memperjelas perbedan wujud karakter dan suasana tiap-tiap tokoh. Suara merupakan unsur yang mutlak harus ada di dalam sebuah pertunjukan Wayang, tanpa adanya suara Dalang tidak dapat mengungkapkan kesan estetik melalui suara wacana dan vocal sesuai dengan dialog dan alur cerita dari pertunjukan Wayang.

3. Gerak

Gerak merupakan sebuah ekspresi gerak dari sebuah Wayang. Tugas seorang dalang yaitu, untuk menghidupkan tampilan wayang melalui ekspresi gerak. Penampilan gerak Wayang tidak sekedar gerak dari titik a ke titik b, melainkan gerakan yang ekspresif, berkesan hidup dan sesuai dengan karakter wayang yang ditampilkan. Seorang Dalang untuk menggerakkan wayang harus

(7)

menguasai teknik-teknik dasar dari pedalangan yang meliputi bentuk, volume, intonasi, tempo, dan kesesuaian dengan iringan. Kepiawaian seorang Dalang untuk mengolah gerak melalui penampilan Wayang akan menimbulkan kesan estetik lewat gerakan dari Wayang yang tampak hidup. Gerak merupakan unsur yang harus ada di dalam sebuah pertunjukan wayang, karena tanpa adanya gerak seorang Dalang tidak dapat mengungkapkan keindahan yang ada di dalam sebuah cerita Wayang.

4. Rupa

Rupa merupakan sebuah sarana pengungkapan wujud sebuah Wayang. Rupa meliputi tampilan bentuk, warna, dan karakter dari sebuah Wayang. Penonton atau khalayak masyarakat megenal karakter dari masing-masing Wayang dengan melihat dari rupa wayang tersebut. Rupa merupakan sebuah unsur yang harus ada di dalam sebuah pertunjukan wayang, karena tanpa adanya rupa, peonton atau khalayak masyarakat tidak dapat membedakan perbedaan karakter Wayang a dengan karakter Wayang b.

2.5 Corona SDK

Corona Sdk merupakan sebuah Software Development Kit yang di rancang oleh walter luh, dimana walter luh merupakan penemu dari Corona Labs Inc.

Developer dapat membangun aplikasi mobile berbasis Android, iPhone dan iPad

dengan menggunakan Cororna Sdk.

(8)

Pemrograman dengan menggukan Corona Sdk sangat mudah, dikarenakan Corona Sdk telah dirancang dengan sifat easy to learn sehingga developer pemula dapat dengan mudah membuat sebuah aplikasi ber-platform android dan iPhone. Berikut ini merupakan fitur-fitur yang disediakan oleh Corona Sdk :

1. Corona Sdk dapat membangun sebuah aplikasi berbasis Android, iOS, Kindle, dan NOOK

2. Corona Sdk bersifat One-Click Builds 3. Limited Corona Plugins

Corona Sdk juga memiliki beberapa kelebihan dan juga kekurangan. Berikut ini merupakan kelebihan mengembangkan aplikasi mobile menggunakan Corona Sdk:

1. Corona Sdk dapat mengembangkan aplikasi 10 kali lebih cepat, karena Corona Sdk menggunakan Bahasa lua.

2. Proses debugging dari aplikasi yang dibuat menggunakan corona secara otomatis dapat terbaca pada platform android dan iOS.

3. Corona Sdk secara otomatis dapat memilih asset berdasarkan resolusi layar, sehingga pengguna tidak perlu men-setting ulang resolusi layar untuk men-debug aplikasi pada resolusi layar yang kecil.

Corona Sdk juga memiliki beberapa kelemahan yang harus diperhatikan, berikut ini merupakan kekurangan dari Corona Sdk :

1. Corona Sdk tidak menggunakan GUI dalam proses layouting, sehingga menyulitkan pengguna awam dalam penggunaannya.

2. Proses debugging pada Corona Sdk belum akurat.

2.6 Lua

Lua merupakan sebuah Bahasa pemrograman yang cepat dan ringan. Lua mengkombinasikan syntax terprosedur yang sederhana dengan konstruksi penjelasan data yang kuat berbasis array asosiatif. Lua berifat dinamis, berjalan dengan menerjemahkan bytecode dan memiliki management memory otomatis. Hal

(9)

tersebut membuat pemrograman dengan menggunakan lua sangat bagus untuk configurasi, scripting dan prototype yang cepat. (Lua, 2016)

Gambar 2.2 Icon Lua

Lua di design, diimplementasikan dan dipelihara oleh sebuah tim pada PUC Rio, Pontifical Catholic University of Rio de Janeiro di Brazil. Lua saat ini berada pada LabLua, sebuah laboraturium dari Department of Computer Science of PUC-Rio.

2.7 Physics Joints

Physics Joint merupakan sebuah teknik yang dapat digunakan untuk

merakit benda-benda fisik yang kompleks dari beberapa badan kaku seperti persendian. Physics joint dapat digunakan untuk menggabungkan anggota badan dari ragdoll, memutar roda kendaraan dari badannya, menciptakan sebuah platform

lift bergerak dan lainnya. Kebanyakan Physics joint digunakan untuk

menghubungkan dua badan kaku sehingga kedua badan kaku tersebut dapat bergerak berlawanan. Physics joint memiliki beberapa sifat yang berbeda-beda sesuai dengan penggunaannya. Sifat-sifat dari physics joint yaitu, pivot joint,

distance joint, piston joint, weld joint, wheel joint, pulley joint, touch joint, rope joint, dan gear joint.

2.7.1 Pivot Joint

Pivot joint yang dikenal sebagai revolute joint pada istilah Box2D, pivot joint menggabungkan dua body pada titik yang berhimpitan, seperti dua papan yang

bergabung dengan titik tengah yang berputar, seperti yang terlihat pada Gambar 2.3.

(10)

Gambar 2.3 Contoh Pivot joint

Argumen pertama adalah body A dan Body B yang akan digabungkan kemudian di deklarasikan, diikuti oleh titik koordinat x dan y sebagai titik anchor yang dinyatakan dalam koordinat ruang.

local pivotJoint = physics.newJoint( "pivot", bodyA, bodyB, anchor_x, anchor_y )

Kode Program 2.1 Kode program pivot joint

Kode Program 2.1 merupakan contoh dari pembuatan pivot joint. Body A dan Body B merupakan argument dari badan A dan badan B yang akan digunakan.

Anchor x dan Anchor y merupakan peletakan dari titik tengah yang akan diputar.

2.7.2 Distance Joint

Distance joint merupakan sebuah joint yang menempelkan dua body pada

jarak yang tetap. Argumen pertama adalah body A dan body B yang akan digabungkan kemudian dideklarasikan, diikuti oleh titik koordinat x dan y sebagai titik anchor yang dinyatakan dalam koordinat ruang.

local distanceJoint = physics.newJoint( "distance", bodyA, bodyB, anchorA_x, anchorA_y, anchorB_x, anchorB_y )

Kode Program 2.2 Kode Program Distance joint

Kode Program 2.2 merupakan contoh dari pembuatan distance joint. Body A dan Body B merupakan argument dari badan A dan badan B yang akan digunakan. Anchor x dan Anchor y merupakan peletakan dari titik tengah.

(11)

Gambar 2.4 Contoh Penggunaan Distance joint

Distance joint dapat dibuat halus, seperti sambungan semi peredam.

Banyak faktor yang dapat mempengaruhi kelembutan distant joint, termasuk massa kelekatan tubuh dan kekuatan dari kedua body tersebut. Sehingga untuk mencapai kelembutan tersebut maka perlu berhati-hati untuk menguji nilai yang ditetwapkan untuk mencapai simulasi yang diinginkan, seperti yang terlihat pada Gambar 2.4.

2.7.3 Piston Joint

Piston joint yang dikenal sebagai prismatic joint pada istilah box2D, piston joint menggabungkan dua titik pada satu koordinat gerak, seperti mesin piston atau elevator yang gerakannya dibatasi sepanjang sumbu vertical, seperti yang terlihat

pada Gambar 2.5.

(12)

Argumen pertama adalah body A dan body B yang akan digabungkan kemudian di deklarasikan, diikuti oleh titik koordinat x dan y sebagai titik anchor yang dinyatakan dalam koordinat ruang.

local pistonJoint = physics.newJoint( "piston", bodyA, bodyB, anchor_x, anchor_y, axisX, axisY )

Kode Program 2.3 Kode Program Piston joint

Kode Program 2.3 merupakan contoh dari pembuatan piston joint. Body A dan Body B merupakan argument dari badan A dan badan B yang akan digunakan. Anchor x dan Anchor y merupakan peletakan dari titik tengah. Piston

joints memiliki sumbu terbatas dari gerakan linear yang didefinisikan dengan axisX

dan axisY. Sumbu pada piston joints bersifat bi-directional dan tidak dianggap sebagai vector arah.

Piston joint dapat dikendalikan dengan joint motor. Tidak seperti gerakan

rotasi yang terdapat pada pivot joint. Gerakan pada piston joint bersifat linear, contohnya, gerakan piston joint dapat digunakan untuk memindahkan elevator naik dan turun mengikuti sumbunya.

2.7.4 Weld Joint

Weld joint menempelkan dua buah body pada sebuah titik anchor yang

spesifik pada sebuah ruang koordinat. Contoh penggunaan weld joint dapat dilihat pada Gambar 2.6.

(13)

Argumen pertama adalah body A dan Body B yang akan digabungkan kemudian di deklarasikan, diikuti oleh titik koordinat x dan y sebagai titik anchor yang dinyatakan dalam koordinat ruang.

local weldJoint = physics.newJoint( "weld", bodyA, bodyB, anchor_x, anchor_y )

Kode Program 2.4 Kode Program Weld joint

Kode Program 2.4 merupakan contoh dari pembuatan weld joint. Body A dan Body B merupakan argument dari badan A dan badan B yang digunakan.

Anchor x dan Anchor y merupakan peletakan dari titik tengah.

2.7.5 Wheel Joint

Wheel joint yang biasa dikenal dengan line joint hampir sama dengan piston joint, kecuali body yang menempel dapat berputar bebas seperti sebuah roda

yang dipasang pada sebuah mobil. Gambar 2.7 merupakan contoh penggunaan

wheel joint.

Gambar 2.7 Contoh Penggunaan Wheel joint

Argumen pertama adalah body A dan Body B yang akan digabungkan kemudian di deklarasikan, diikuti oleh titik koordinat x dan y sebagai titik anchor yang dinyatakan dalam koordinat ruang, diikuti oleh nilai nilai yang menentukan sumbu gerak linier dari wheel joint tersebut.

local wheelJoint = physics.newJoint( "wheel", bodyA, bodyB, anchor_x, anchor_y, axisX, axisY )

(14)

Kode Program 2.5 merupakan contoh dari pembuatan wheel joint. Body A dan Body B merupakan argument dari badan A dan badan B yang digunakan.

Anchor x dan Anchor y merupakan peletakan dari titik tengah. Piston joints

memiliki sumbu terbatas dari gerakan linear yang didefinisikan dengan axisX dan

axisY. Sumbu pada piston joints bersifat bi-directional dan tidak dianggap sebagai vector arah.

2.7.6 Pulley Joint

Pulley joint menempelkan dua buah body dengan sebuah tali yang tidak

terlihat dengan panjang yang tetap konstan. Jika satu body ditarik atau didorong,

body yang lainnya akan mengimbagi sesuai dengan gerakan body yang pertama.

Gambar 2.8 Contoh Penggunaan Pulley joint

Argument pertama adalah body A dan B yang akan digabungkan, diikuti

dengan dua koordinat berpasangan yang mewakili titik anchor statis. Empat

argument selanjutnya yaitu titik koordinat x dan y, yang diikuti oleh nilai ratio

akhir, dimana dapat disesuaikan untuk simulasi block dan pengaturan tackle. Gambar 2.8 merupakan contoh penggunaan pulley joint.

local pulleyJoint = physics.newJoint( "pulley", bodyA, bodyB, statA_x, statA_y, statB_x, statB_y, bodyA_x, bodyA_y, bodyB_x, bodyB_y, 1.0 )

(15)

Fitur dari pulley joint adalah sebuah ratio property sebagai parameter final di dalam constructor. Ratio ini dapat disesuaikan untuk simulasi block dan pengaturan tackle. Pada sebuah scenario, satu sisi dari tali pulley berpindah lebih cepat dari yang lainnya. Default ratio bernilai 1.0 dimana dengan default ratio dapat mensimulasikan pulley joint yang sederhana. Kode Program 2.6 merupakan kode program untuk membuat pulley joint sederhana.

2.7.7 Touch Joint

Touch joint yang sering dikenal sebagai mouse joint menghubungkan single object pada sebuah on screen target point. Touch joint dapat digunakan untuk

memindahkan object pada sebuah target point menggunakan elastic joint teoritis dengan variable yang kuat dan elastis. Argument pertama yaitu body A untuk dihubungkan yang diikuti oleh titik koordinat x dan y pada ruang konten, seperti yang dapat dilihat pada Kode Program 2.7.

local touchJoint = physics.newJoint( "touch", body, anchor_x, anchor_y )

Kode Program 2.7 Kode Program Touch joint

Anchor point pada touch joint dapat dianggap titik yang menghubungkan body. Contohnya, untuk menghubungkan sebuah body menggunakan titik tengah,

misalkan body.x dan body.y sebagai dua argumen. Untuk memindahkan sebuah

object yang disentuh menggunakan nilai event.x dan event.y yang dikembalikan

dengan event touch. Anchor point ini umumnya dikonfigurasikan sebagai titik dalam batas-batas body, meskipun anchor point dapat berada di luar batas yang diinginkan. Gambar 2.9 merupakan contoh penggunaan touch joint.

(16)

Gambar 2.9 Contoh Penggunaan Touch joint

2.7.8 Rope Joint

Rope joint menghubungkan dua object dengan sebuah tali non elastis. Rope joint membatasi jarak maksimum antara dua body bahkan jika terdapat

kecepatan lain yang signifikan diatasnya. Seperti yang terlihat pada Gambar 2.10.

Gambar 2.10 Contoh Penggunaan Rope joint

Argument pertama yaitu body A dan B digabungkan, diikuti dengan optional localized offset points dimana dapat digunakan untuk menentukan non-center anchor point untuk masing-masing ujung tali. Seperti yang terlihat pada

Kode Program 2.8.

local ropeJoint = physics.newJoint( "rope", bodyA, bodyB, offsetA_x, offsetA_y, offsetB_x, offsetB_y )

(17)

Ketika mengkonfigurasi sebuah rope joint, nilai offset bersifat optional dan default bernilai 0 kecuali jika nilai offset ditentukan sebaliknya. Tidak seperti

joints lainnya, nilai x dan y tidak harus bersifat spesifik.

2.7.9 Gear Joint

Gear joint digunakan untuk mensimulasikan sophisticated mechanical contraptions involving gears. Gear joint dapat menghubungkan dua body atau

kelipatannya sesuai urutan. Satu putaran body yang dikendalikan dapat bersifat

realistically power seperti mesin asli. Contohnya dapat dilihat pada Gambar 2.11.

Gambar 2.11 Contoh Penggunaan Gear joint

Perbedaan gear joint dari joint yang lainnya yaitu, gear joint dioperasikan langsung oleh dua joint yang berbeda lainnya.

local gearJoint = physics.newJoint( "gear", bodyA, bodyB, joint1, joint2, ratio )

Kode Program 2.9 Kode Program Gear joint

Dua joint tersebut harus dibuat terlebih dahulu sebelum mengoperasikan

gear joint dan joint yang digunakan harus pivot joint atau piston joint. Salah satu

dari pivot joint atau piston joint dapat dihidupkan dengan putaran atau berbenturan dengan pivot joint atau piston joint lainnya yang menempel pada induk gear joint, seperti yang terlihat pada Kode Program 2.9.

(18)

2.8 Event Listener

Event Listener merupakan sebuah event yang dikirim ke dalam fungsi Event Listener yang mana ditulis pada sebuah fungsi dasar.

local function myTouchListener( event ) print( "Touch X location"..event.x ) print( "Touch Y location"..event.y ) end

local myButton = display.newRect( 100, 100, 200, 50 ) myButton:addEventListener( "touch", myTouchListener )

Kode Program 2.10 Kode Program Event Listener

Kode Program 2.10 menjelaskan bagaimana sebuah event melalui fungsi

myTouchListener mengandung titik x dan y dimana kedua titik tersebut dijadikan

sebagai tempat touch event terjadi. Event Listener dapat dibuat menggunakan metode addEventListener(). Event Listener dibuat dengan menggunakan nama string dari jenis event dan nama dari fungsi event listener, Seperti yang terlihat pada Kode Program 2.11.

--standard touch listener on an object

myButton:addEventListener( "touch", myTouchListener ) --Runtime 'system' event listener

Runtime:addEventListener( "system", onSystemEvent ) myButton:removeEventListener( "touch", myTouchListener )

Kode Program 2.11 Kode Program Pembuatan Event

Event Listener dapat dihapus secara otomatis dengan menggunakan fungsi removeEventListener(), Contohnya ketika user ingen menghentikan Event Listener

yang berada pada object myButton, seperti yang terlihat pada Kode Program 2.11.

2.8.1 Touch Event

Touch event menyediakan tingkatan yang lebih besar dari interaktifitas

layar. Touch event dapat mendeteksi ketika user menyentuh layar pertama kalinya dan ketika user melepaskan sentuhan dari layar. Touch event juga dapat mendeteksi

(19)

gerakan yang bergerak disekitaran layar dengan menggunakan event.phase, seperti yang terlihat pada Kode Program 2.12.

local function myTouchListener( event ) if ( event.phase == "began" ) then

--code executed when the button is touched

print( "object touched = "..tostring(event.target) ) --'event.target' is the touched object

elseif ( event.phase == "moved" ) then

--code executed when the touch is moved over the object print( "touch location in content coordinates =

"..event.x..","..event.y )

elseif ( event.phase == "ended" ) then

--code executed when the touch lifts off the object

print( "touch ended on object "..tostring(event.target) ) end

return true --prevents touch propagation to underlying objects

end

local myButton = display.newRect( 100, 100, 200, 50 )

myButton:addEventListener( "touch", myTouchListener ) --add a "touch" listener to the object

Kode Program 2.12 Kode Program Touch Event

Event.phase “began” menunjukkan bahwa sebuah touch memulai

menyentuh layar, event.phase “moved” menunjukkan bahwa sebuah touch berpindah posisi pada layar, dan event.phase “ended” menunjukan bahwa sebuah

touch terlepas dari layar.

2.8.2 Tap Event

Tap event merupakan teknik dasar dari interaksi di dalam layar. Tap event

akan menunjukkan bahwa user telah menyentuh layar dan melepaskannya pada titik perkiraan yang sama. Tap event dianggap berhasil hanya ketika user menyentuh dan melepaskannya pada satu titik yang sama.

local function myTapListener( event )

--code executed when the button is tapped

print( "object tapped = "..tostring(event.target) ) --'event.target' is the tapped object

(20)

return true end

local myButton = display.newRect( 100, 100, 200, 50 )

myButton:addEventListener( "tap", myTapListener ) --add a "tap" listener to the object

Kode Program 2.13 Kode Program Tap Event

Kode Program 2.13 merupakan contoh sederhana dari penggunaan tap

event. Event.target merupakan acuan untuk object yang telah di tap. Event.name

merupakan sebuah nilai string dari “tap”, event.x / event.y merupakan posisi x dan y dari “tap”, event.numTaps merupakan jumlah dari tap yang akan diaplikasikan ke layar. Delay default antara tap awal dan tap selanjutnya adalah 0 detik, tetapi waktu

delay dapat diatur dengan fungsi system.setTapDelay().Hal itu dikarenakan tap

merupakan sebuah action singular yang melibatkan keduanya termasuk ketika disentuh dan dilepas.

local function myTapListener( event ) if ( event.numTaps == 2 ) then

print( "object double-tapped = "..tostring(event.target) ) else

return true end

end

local myButton = display.newRect( 100, 100, 200, 50 ) myButton:addEventListener( "tap", myTapListener )

Kode Program 2.14 Kode Program Double Tap Event

Menggunakan event.numTaps, user dapat dengan mudah menentukan apakah sebuah object termasuk double tap dan single tap. Untuk menentukan sebuah tap bernilai double ataupun single dengan mengubah event.numTaps dengan nilai 2, seperti yang terlihat pada Kode Program 2.14.

(21)

Gambar

Gambar 2.3 Contoh Pivot joint
Gambar 2.4 Contoh Penggunaan Distance joint
Gambar 2.6 Contoh Penggunaan Weld joint
Gambar 2.7 Contoh Penggunaan Wheel joint
+4

Referensi

Dokumen terkait

dari Dirut PT ASABRI (Persero) di dalam menghadapi penolakan terhadap penerapan nilai 7 Budi Utama dari pegawai terlihat dari adanya keterbukaan dan kebebasan dari Dirut kepada

• Katarak adalah suatu keadaan patologik lensa dimana lensa menjadi keruh akibat hidrasi cairan lensa atau denaturasi protein lensa.. • dapat timbul pada berbagai

Sejalan dengan hal itu, untuk mengurangi tekanan terhadap hutan oleh masyarakat, maka masyarakat lokal dapat diberdayakan dalam kegiatan ekowisata yang

Untuk memperoleh daktilitas yang tinggi pada struktur gedung tinggi yang direncanakan, harus diupayakan agar sendi-sendi plastis yang terbentuk akibat beban gempa maksimum

disimpulkan bahwa risiko likuiditas, risiko kredit, risiko pasar, dan risiko operasional secara bersama-sama mempunyai pengaruh signifikan terhadap ROA pada Bank

IV-8 Gambar IV-6 Diagram sequence analisis use case melakukan transaksi SMS-Banking ... IV-9 Gambar IV-7 Diagram kelas analisis use case mengolah SMS

Jenis penelitian ini adalah penelitian kuantitatif, dimana peneliti berusaha untuk menemukan pengaruh secara langsung variabel bebas yaitu pengaruh

Melihat kondisi Sentra pengasapan Ikan yang semakin tidak terawat dan keinginan pengasap ikan untuk mengembangkan kembali, maka penulis mengembangkan konsep kreatif untuk