5 Alasan Saya Memilih Phaser dalam Membuat Game

Setelah beberapa tahun mencoba berbagai macam game engine ternyata akhirnya hingga saat ini pilihan saya jatuh ke PhaserJS. Saya telah mencoba berbagai game engine seperti Unity, Constract, gameDevelop dan beberapa lainnya akhirnya memilih Phaser. Cocok bagi saya tentu saja belum mesti begitu juga untuk anda. 

Sebenarnya saya mulai tahu Phaser sudah sejak lama yaitu sekitar akhir tahun 2013, bahkan sejak saya masih belajar pemrograman mobile dengan intelXDK. Pada salah satu pilihan Javascript engine di intelXDK ada Phaserjs yang kemudian mulai saya explorasi. Tetapi setelah beberapa minggu ekplorasi itu tidak saya lanjutkan akibat beberapa pekerjaan yang sudah deadline sehingga harus saya prioritaskan.

Karena banyaknya pekerjaan dan padatnya jadwal mengajar, membuat saya dulu juga ingin mencoba alternatif membuat game dengan tanpa harus menulis kode bahasa pemrograman. Oleh sebab itu saya mulai mencoba-coba berbagai engine game dimulai dari constract kemudian lainnya. 

Tetapi setelah game yang saya buat dengan bantuan game engine sudah jadi, ternyata saya tidak puas karena ada batasan yang diterapkan bertentangan dengan keinginan saya. Kemudian saya mulai berpetualang mencoba engine satu dan lainnya, untuk menemukan mana yang dapat membantu saya tanpa harus dibatasi dan mesti tanpa biaya. 


Phaser adalah Framework Game atau Engine Game?

Walaupun di forum-forum masih banyak yang memperselisihkan antara Framework dan Engine. Tetapi saya nyatanya menemukan bila Phaser memang tidak dibungkus dengan tampilan GUI yang memudahkan seseorang membuat game. Phaser memang mengharuskan menulis kode.

Meskipun ada Phaser Editor tetapi itu juga bukan game engine-nya Phaser. Phaser editor merupakan software untuk membantu menulis kode secara khusus untuk membuat game dengan Phaser.

Phaser menyediakan berbagai fungsi yang dapat dimanfaatkan seseorang untuk membuat game dengan menuliskan kode programnya. Maka saya setuju memang  phaser lebih tepat disebut sebagai framework game. 

Kelebihan Phaserjs



Baik engine ataupun framework keduanya memiliki kelebihan dan kelemahan yang saling berkebalikan. Jadi bila pada engine merupakan kelemahan maka diframework merupakan kelebihan. Menurut pendapat peserta forum html5gamedev setelah dikumpulkan disini saya rangkum

Kelebihan Framework Game adalah

  1. Dibuat untuk membuat game dengan menulis kode
  2. Lebih fleksibel dan memberikan kebebasan bagi orang yang membuat game dengan framework itu
  3. Karena berisi kode jadi yang tahu secara lebih dalam adalah yang menulis kode itu sendiri

Kekurangan Framework adalah

Memerlukan waktu belajar (learning curve) yang lebih panjang dibandingkan dengan engine atau singkatnya lebih susah. Ya bisa dimengerti karena menulis bahasa pemrograman itu seperti belajar dan menulis dengan bahasa asing yang bukan sehari hari. Ditambah lagi yang ditulis mesti berdasarkan logika pemrograman.

Padahal sebenarnya kalau tahu triknya mudah juga kok menggunakan framework. Seperti cara belajar JavaScript yang menurut banyak orang susah, tapi kalau tahu cara sederhanya mudah lho, seperti di artikel cara belajar Javascript paling mudah yang jarang diketahui umum.

Saya sebenarnya tidak terlalu bermasalah apakah Phaser merupakan framework ataukah game engine. Saya cuma fokus apakah sarana tersebut dapat membantu saya mewujudkan tujuan saya dengan efektif dan efisien. 

Kelebihan dan Kekurangan Phaser

Maka saya mencoba mengenal Phaser dari kelebihan dan kekurangannya. Berikut ini kelebihan dan kekurangan baik menurut pendapat beberapa pengguna yang telah saya rangkum dan pendapat menurut saya sendiri.

Kelebihan Phaser Menurut Penggunanya

  1. Phaser dirancang dengan struktur yang baik, sehingga memudahkan pemula sekalipun untuk belajar
  2. Phaser dirancang untuk pengembangan game dan menjadi salah satu yang terbaik
  3. Phaser didukung dengan banyak plugin
  4. Phaser mampu berjalan di WebGL dan Canvas sehingga anda dapat memilih sendiri atau membiarkan sistem yang memilihnya untukmu

Kelebihan Phaser Menurut Saya

Bila anda ingin membuat game dengan mudah, maka anda dapat memilih untuk menggunakan salah satu dari game engine yang telah ada. Sedangkan saya sebenarnya ingin bebas tidak diatur-atur untuk menuangkan ide maka saya memilih Phaser dengan alasan:

  1. Dengan Phaser saya bebas mengatur tampilan sesuai yang saya inginkan. Background saya yang berkaitan dengan dunia bahasa pemrograman terutama pemrograman web sering menggelitiki diri saya untuk mengcustomisasi tampilan dengan HTML+CSS. Tentu saja Phaser dapat mengakomodir hal tersebut.
  2. Saya sebenarnya ingin mengatur lebih detil tentang kapan munculnya kejadian bagaimana kejadian itu muncul atau memacu kejadian yang lain. Salah satu kejadian yang dulu mendasari saya menggunakan phaser adalah dalam memunculkan iklan. Beberapa engine ada yang memberikan fasilitas memunculkan iklan, tetapi ada juga yang harus membayar dulu.
  3. Saya menyukai membuat game dengan tanpa biaya. Saat ini banyak Engine yang bebas biaya walaupun dengan batasan aturan tertentu.
  4. Saya ingin membuat game hanya sekali kerja tapi dapat digunakan di desktop, website, maupun mobile. 
  5. Alasan selanjutnya ini sebenarnya adalah karena keterbatasan saya yang memiliki peralatan komputer dengan spesifikasi intel pentium 2 belum core masih 32bit, RAM 2GB. Dengan spesifikasi tersebut saya tertantang untuk tetap dapat membuat game yang menyenangkan. Syukurlah dengan phaser hal itu masih dapat diwujudkan.

Setelah kelebihan Phaser yang menarik untuk digunakan, maka tentu tidak imbang bila tidak dituliskan pula apa saja kekurangan menurut penggunanya dan juga menurut saya sendiri.

Kekurangan Menurut Penggunanya

  1. Ukuran phaser untuk game desktop menjadi besar sebab perlu dibungkus dengan thirdparty misalnya electron atau NWJS yang dulu bernama NodeWebKit.
  2. Untuk membuat game mobile memerlukan bantuan third party seperti cordova.
  3. Pengaturan state terkadang membingungkan untuk pemula


Kekurangan Phaser Menurut Saya

  1. Phaser memiliki versi 2 yang berbeda dengan versi 3. Sehingga bila ingin membuat game dengan versi 3 harus merubah kode lagi.
  2. Phaser harus ngoding, iya karena framework belum ada enginenya maka harus ditulis. Tetapi sisi baiknya jadi lebih cepat paham untuk orang dengan background programmer.
  3. Phaser belum dapat dimanfaatkan untuk game 3D. Mungkin bisa tapi perlu upaya extra yang belum saya ketahui.


Kesimpulan

Phaser merupakan framework yang baik untuk mengembangkan game lintas platform (cross platform). Dengan dukungan komunitas dan berbagai plugin membuat pemula lebih mudah belajar dalam lingkungan yang menyenangkan. 

Saya akhirnya menyadari bahwa berbagai game engine memang memiliki kelebihan dan juga kekurangannya masing-masing. Terus terang saya juga suka Engine dan disini saya tidak mengunggulkan bahwa Phaser adalah yang terbaik. 

Tetapi phaser merupakan Framework yang cocok bagi saya karena dapat saya manfaatkan sesuai dengan keinginan saya saat ini. Jadi tulisan ini memang alasan subjectif saya dan silahkan anda membuat pilihan sendiri.

Apakah suatu saat saya akan berpindah menggunakan Game Engine? Bila memang ide saya dapat diwujudkan dengan game Engine maka kenapa tidak, saya tidak menutup diri untuk menggunakannya kelak.

Demikian tulisan saya kali ini, semoga bermanfaat.

Posting Komentar