Fokus utama framework libGDX adalah untuk mobile game development (Android dan iOS). Sesetengah IDE agak kurang support untuk Android development. Boleh itu boleh, cuma ada banyak configuration yang kena tukar. Agak leceh. Jadi, kita akan menggunakan IDE yang memang ada support dari pihak yang bangunkan Android itu sendiri, iaitu Google. IDE tersebut ialah IntelliJ dan Android Studio. Pilih sahaja yang mana satu, Android Studio pun sebenarnya berasaskan daripada IntelliJ. Untuk tutorial ini, saya akan gunakan IntelliJ.

Gradle

Sebelum ini kita pernah menggunakan Ant build system untuk deploy JavaFX. Untuk libGDX pula, kita akan menggunakan Gradle build system. Dengan menggunakan Gradle, project libGDX akan download semua yang diperlukan secara automatik. Untuk setup project, download Setup App daripada website libGDX.

Setelah selesai, double-click file tersebut untuk membuka libGDX Project Generator.

libGDX Project Generator

libGDX Project Generator digunakan untuk menghasilkan project untuk game. Setelah selesai generate project, project tersebut boleh dibuka menggunakan mana-mana IDE.

Gambar rupa libGDX Project Generator

Seperti yang kita nampak, kita boleh pilih untuk deploy ke beberapa platform seperti Desktop, Mobile, dan Web. Kita juga boleh pilih untuk tambah extensions untuk game tersebut.

  • Bullet – Physics engine untuk game 3D. Antara game yang menggunakan Bullet ialah GTA.

  • Freetype – Font kualiti tinggi.

  • Tools – Package tambahan yang mengandungi particle editors, texture packer, dan sebagainya.

  • Controllers – Support untuk controller tambahan seperti gamepad.

  • Box2d – Physics engine untuk game 2D. Antara game yang menggunakan Box2d ialah Angry Bird.

  • Box2dlights – Lighting yang menggunakan Box2d.

  • Ashley – Entity System Framework.

  • Ai – Game AI algorithm contohnya untuk pathfinding.

Pilih extensions bergantung kepada jenis game yang kita nak buat, kemudian klik Generate. Kalau ada pilih Android, dia akan tanya sama ada mahu guna Android API yang latest. Pilih No untuk kedua-duanya. Proses untuk generate project akan mengambil masa kerana sedang download.

Open project

Selepas siap generate project, buka project tersebut menggunakan IntelliJ. Jika ini projek yang pertama menggunakan IntelliJ, proses ini akan sekali lagi mengambil masa yang lama kerana IntelliJ sedang menghasilkan project menggunakan Gradle dan download beberapa dependencies.

Setelah selesai, kita boleh nampak package untuk project. Bergantung kepada platform mana yang kita pilih, akan ada beberapa project yang telah dihasilkan:

  • Core – Tempat utama untuk letak semua code untuk game.

  • Desktop – Code untuk run game desktop.

  • Android/iOS – Code untuk run game mobile.

  • HTML – Code untuk run di browser.

Secara ringkasnya, semua code berkaitan game seperti game logic, input, sound dan sebagainya akan diletakkan di Core. Untuk run game tersebut, run menggunakan project untuk platform masing-masing.

Kelebihan cara ini adalah untuk memudahkan developer untuk test game kerana untuk run Android di desktop perlu menggunakan emulator. Emulator yang disediakan Google pula sangat perlahan. Cara lain ialah test menggunakan phone sendiri, tetapi mungkin developer tidak mempunyai phone Android atau iOS. Oleh itu, kita run terus di atas desktop, dan apabila sudah siap barulah kita boleh test di atas mobile phone.

Test run

Kita akan test run project atas desktop untuk lihat sama ada configuration untuk game kita betul ataupun tidak. Sebelum itu, kita perlu buat sesuatu terlebih dahulu.

Pergi ke menu Run, kemudian Edit Configurations…​. Selepas itu, klik + dan pilih Application. Tulis Desktop di Name. Pilih desktop untuk Use classpath of module. Pilih DesktopLauncher untuk Main class. Pilih android/assets untuk Working directory (kalau bukan project Android, pilih core/assets).

Klik Apply dan OK.

Gambar configuration untuk run libGDX atas desktop

Setelah selesai, kita boleh run game libGDX di atas desktop menggunakan menu Run Desktop atau klik butang dengan icon play hijau.

Kalau ada keluar windows dengan gambar seperti di bawah ini dengan background merah maksudnya kita sudah berjaya setup game menggunakan libGDX.

Gambar logo badlogicgames