• Tidak ada hasil yang ditemukan

Logo Easy

LANDASAN TEOR

2.3 Pathfinding dalam Video Game

Pada umumnya pathfinding digunakan dalam mencari jalan yang terbaik diantara dua lokasi. Di dalam video game, jalan yang terbaik adalah jalan yang memiliki cost lebih sedikit daripada jalan yang lebih dekat. Berarti bahwa jalan memutari bukit mungkin akan lebih baik dibandingkan jalan mendaki bukit yang memiliki cost lebih banyak (Cui et al, 2011).

2.3.1 Algoritma Shortest Path

Algoritma Dijkstra dan Algoritma A* (A Star) merupakan dua algoritma klasik untuk mencari grafik di geometri, dimana dapat mencari jalan terpendek diantara dua titik atau node pada grafik berbobot seperti pada Gambar 2.4 (Cui et al, 2011).

Gambar 2.4 Grafik berbobot (Cui et al., 2011)

Dahulu, algoritma Dijkstra merupakan satu-satunya cara dalam melakukan pathfinding sampai 2 dekade terakhir namun pada saat ini algoritma A* menjadi solusi umum dalam melakukan pathfinding di dalam video game (Millington et al., 2009). Untuk perbandingan antara algoritma Dijkstra dan A* dapat dilihat pada Gambar 2.5.

mendapatkan hasil seperti yang terlihat pada Gambar 2.6a. Sementara pada algoritma A* menggunakan metode heuristic untuk mengurangi ruang pencarian seperti Gambar 2.6b sehingga hanya memeriksa titik yang menuju tujuan (Cui et al., 2011). Heuristic adalah penuntun untuk menemukan pemecahan atau jawaban dari suatu masalah (Webster ,1985 dalam Tambunan, 2014), dalam algoritma A* heuristic digunakan untuk mencari estimasi cost dari sebuah titik (n) ke titik tujuan.

Berdasarkan penelitian Goyal et al. pada tahun 2014, algoritma Dijkstra dan algoritma A* memiliki dasar yang sama. Hanya saja heuristic tidak digunakan pada algoritma Dijkstra, sehingga pencarian akan dilakukan ke segala arah, dan algoritma A* hanya memeriksa area yang mengarah kepada tujuan. Hal ini mengakibatkan algoritma Dijkstra memerlukan proses yang lebih lama daripada algoritma A*. Namun kedua algoritma memiliki perannya masing masing, algoritma A* biasanya digunakan ketika kita mengetahui target tujuan sedangkan algoritma Dijkstra digunakan ketika kita tidak mengetahui target tujuan.

2.4 Animasi

Animasi adalah usaha untuk membuat presentasi statis menjadi hidup. Animasi merupakan perubahan visual sepanjang waktu yang memberi kekuatan besar pada proyek multimedia dan halaman web yang dibuat (Vaughan, 2004 dalam Binanto, 2010 dalam Paramita, 2014).

Animasi berasal dari kata “to animate” yang artinya menggerakan. Animasi sendiri merupakan suatu teknik menampilkan gambar berurutan sedemikian rupa sehingga penonton merasakan adanya ilustrasi gerakan (motion) pada gambar yang ditampilkan. Animasi adalah hasil dari proses menampilkan objek-objek gambar sehingga gambar yang ditampilkan akan tampak hidup. Tidak hanya menghidupkan, animasi juga memberikan karakter kepada objek-objek tersebut (Binanto, 2010 dalam Paramita, 2014).

Animasi dapat dibuat dengan cara menggunakan sekumpulan gambar yang berubah sedikit demi sedikit, yang ditampilkan secara berurutan dengan kecepatan tertentu, sehingga menimbulkan kesan bergerak pada sekumpulan gambar tersebut. Kehalusan animasi bisa ditentukan melalui banyaknya gambar yang ditampilkan dalam 1 detik atau disebut frame per second (fps). Pada umumnya televisi memiliki frame rate 50 atau 60 frame per second dan itu sesuai dengan animasi yang memiliki 25 atau 30 frame per second (Robert, 2007). Frame rate yang digunakan dalam video

ber-genre action (Rantala, 2013).

Ada dua cara untuk membuat animasi yaitu straight-ahead dan pose-to-pose. Dalam straight-ahead gambar aksi dibuat secara satu persatu pada setiap frame dari awal sampai akhir. Metode ini menghasilkan animasi yang spontan dan kreatif, namun sulit untuk menjaga proporsi dan fokus di dalam scene. Di dalam animasi pose-to- pose, animator akan menentukan terlebih dahulu gambar-gambar yang penting dalam gerakan dan menggambarnya terlebih dahulu. Metode ini memberikan kontrol penuh kepada scene sehingga hasilnya akan jelas dan kuat. Hanya saja kekurangan dari metode ini adalah kurangnya spontanitas dalam melakukan gerakan aksi secara langsung. Oleh sebab itu, kedua metode harus dimanfaatkan untuk menghasilkan hasil yang maksimal (Thomas & Johnston 1981, 56-58).

2.4.1 Teknik Animasi

Dalam animasi tradisional, animasi 2D digambar secara satu persatu pada setiap frame baik dengan menggunakan metode straight-ahead maupun pose-to-pose. Hanya saja jika menggambarnya satu persatu maka akan membutuhkan waktu dan usaha yang banyak. Beberapa teknik yang dapat membantu dalam membuat animasi 2D agar menjadi lebih efisien adalah dengan cara rotoscoping, cut-out or commponent-based animation dan skeletal animation (Rantala, 2013).

Rotoscoping adalah teknik animasi dengan cara tracing atau menjiplak frame satu persatu dari live action footage (Laybourne 1998, 162). Live action merupakan material referensi yang bagus namun dalam menggambar animasi tidak dapat dilakukan dengan cara mengambil semua informasi yang dibawa oleh gerakan real life. Animasi yang dibuat dengan cara menjiplak live action footage secara keseluruhan akan terlihat tidak meyakinkan dan tidak wajar (Williams 2001, 371 – 371). Gerakan harus ditafsirkan dan digambar ulang untuk membentuk gambar yang cocok pada animasi (Thomas & Johnston, 1981,323), Untuk contoh teknik rotoscoping dapat dilihat pada Gambar 2.7

Gambar 2.7 Contoh gambar dengan menggunakan teknik Rotoscoping (Simon, 2003)

Traditional cut-out animation dibuat dengan cara memotong gambar figur dari kertas dan diletakan dalam scene. Dengan menggunakan teknik cut-out dapat mempersingkat pekerjaan, karena satu gambar dapat digunakan berkali-kali namun gerakan karakter akan menjadi terbatas. Cut-out animation dapat dibuat menjadi lebih fleksibel dengan membuat karakter yang dapat dibongkar pasang sehingga pada bagian tertentu, seperti kaki, dapat bergerak secara individual (Laybourne 1998, 60- 61). Digital cut-out dapat berupa bitmap atau berbasis vector dan dapat dibentuk dari beberapa komponen yang dapat dimanipulasi secara individual (Rantala, 2013). Untuk contoh teknik cut-out animation dapat dilihat pada Gambar 2.8.

Gambar 2.8 Contoh gambar menggunakan teknik Cut-out Animation (Deveze & Gonzalez, 2012)

Skeletal animation adalah teknik animasi berbasis komputer dimana pada gambar akan diletakan tulang yang saling berhubungan dan tidak terlihat pada setiap karakter atau figur pada gambar yang berfungsi untuk menggerakan karakter atau figur tersebut. Skeletal animation sering digunakan pada animasi 3D, namun juga dapat digunakan pada beberapa program animasi 2D (Rantala, 2013). Untuk contoh teknik skeletal animation dapat dilihat pada Gambar 2.9.

Gambar 2.9 Contoh gambar menggunakan teknik Skeletal Animation (Baran & Popovic, 2007)

2.4.2 Animasi pada Video Game

Perbedaan besar dari pembuatan animasi untuk film dengan video game adalah animasi pada video game lebih interatif dibandingkan animasi pada film. Pada film, animasi hanya ditujukan untuk dilihat secara pasif. Sementara pada game, setiap animasi dapat dikontrol oleh user. Setiap aksi merupakan respon dari perintah pemain, objek atau karakter pada lingkungan harus merespon setiap aksi dari pemain dengan dengan reaksi mereka masing masing pada saat yang tepat (Sanders dalam Rantala, 2013).

Tujuan utama dari animasi pada video game adalah untuk menyajikan gameplay, sedangkan visual merupakan kepentingan yang kedua (Caoili 2012). Untuk menjaga agar feel tetap dapat dikontrol, maka animasi harus memiliki durasi yang singkat sehingga perintah yang diberikan pemain dapat dilakukan dengan segera. Animasi yang telalu lama akan membuat pemain merasa bosan meskipun animasi tersebut memiliki visual yang bagus (Maestri 2001,4). Di dalam beberapa video game, jumlah frame yang dapat digunakan pada setiap animasi ditentukan secara ketat. Dibandingkan dengan animasi film, animator video game memiliki kebebasan lebih sedikit untuk menyampaikan pesan mereka (Cartwright 2011).

Karena diputar secara real time, kemampuan hardware harus menjadi perhitungan dalam menentukan tingkat kompleksitas dari sebuah animasi. Kebanyakan animasi pada video game terdiri dari sebuah perputaran gambar pendek dan berputar terus menerus sehingga dapat membuat sebuah gerakan yang berulang ulang. Perputaran ini meliputi gerakan dasar seperti berdiri, berjalan, dan menyerang. Untuk membuat animasi terlihat menjadi lebih natural, dibutuhkan transisi yang halus diantara frame terakhir dengan frame pertama (Maestri 2001, 1, 4-5).

BAB 1 PENDAHULUAN

Dokumen terkait