Dapatkan informasi terbaru dari Google for Games Developer Summit di g.co/gamedevsummit

Dasar-dasar pengembangan game Android

Panduan ini memperkenalkan developer game baru pada alat dan library utama yang digunakan untuk pengembangan game Android. Panduan pengembangan game Android menargetkan developer yang sudah merencanakan atau menyiapkan sebagian besar lingkungan pengembangan game mereka. Misalnya, developer game berpengalaman biasanya sudah memiliki game dalam pengembangan yang menggunakan game engine, IDE, dan API grafis tertentu.

Dalam sebagian besar kasus, kami merekomendasikan opsi yang lebih mudah digunakan untuk pemula, bukan opsi lanjutan yang memaksimalkan performa. Jika terbiasa dengan alat dan library ini, Anda dapat menggunakan ringkasan untuk menemukan panduan yang mendukung jenis pengoptimalan tertentu, seperti performa tinggi atau masa pakai baterai.

Game engine

Game engine adalah framework software yang mencakup serangkaian library dan alat untuk pengembangan game. Anda dapat menggunakan library untuk menambahkan berbagai fitur ke game yang akan mencegah Anda fokus pada konten dan pengoptimalan game. Fitur tersebut biasanya mencakup grafis, animasi, suara, game loop, dukungan perangkat input, dan lainnya.

Selain itu, game engine biasanya menyertakan IDE dan alat lainnya untuk mengonfigurasi fitur, mendesain, mengembangkan, dan mengekspor game Anda ke Android.

Salah satu pilihan terpenting yang harus dibuat saat Anda mengembangkan game adalah apakah mengembangkan game engine baru, menyesuaikan mesin game yang sudah ada, atau menggunakan game engine yang belum dimodifikasi.

Bawaan

Ini adalah opsi yang kami rekomendasikan jika Anda baru mengenal pengembangan game. Dengan game engine bawaan, Anda tidak perlu menghabiskan waktu untuk mengembangkan game engine atau menambahkan library AGDK, sehingga menjadi cara termudah untuk mengembangkan game Android. Namun; untuk mengembangkan game Android tanpa memodifikasi game engine, game engine harus mendukung pengembangan Android.

Saat menggunakan game engine bawaan, kami menyediakan pengoptimalan Android tambahan, alat alur kerja, dan praktik terbaik. Selain itu, kami menyediakan layanan Google Play yang mencakup berbagai alat distribusi dan sosial.

Berikut adalah beberapa game engine yang mendukung pengembangan Android:

  • Godot: game engine open source yang mendukung beberapa bahasa pemrograman termasuk GDScript, C#, dan C++.
  • Defold: game engine open source yang menggunakan bahasa pemrograman Lua.
  • Unity: game engine komersial yang banyak digunakan dan menggunakan bahasa pemrograman C#.
  • Unreal: game engine komersial yang berspesialisasi di grafis 3D kelas atas. Ini menggunakan sistem pembuatan skrip visual Blueprint dan C++.

Untuk informasi selengkapnya, lihat panduan menggunakan game engine di Android.

Kustom

Opsi paling canggih adalah membuat game engine baru atau menambahkan dukungan Android ke game engine yang ada. Meskipun kompleks dan memakan waktu, tetapi Anda dapat mengembangkan mesin yang sepenuhnya dioptimalkan dan disesuaikan dengan kebutuhan Anda. Misalnya, banyak game engine yang sudah ada menyertakan fitur tambahan yang menambah ukuran dan menurunkan performa game, yang merupakan area yang dapat Anda tingkatkan jika mengecualikan fitur tersebut.

Karena kerumitan dan waktu yang diperlukan untuk mengembangkan game engine, kami tidak merekomendasikan opsi ini untuk developer game baru. Opsi ini sebenarnya cocok untuk organisasi besar yang berencana menggunakan mesin ini di beberapa game.

IDE

IDE yang Anda gunakan untuk mengembangkan game Android bergantung pada game engine yang digunakan dan alur kerja Anda. Game engine paling umum menyertakan editor game untuk desain dan pengeditan kode, yang biasanya digunakan oleh developer game beserta Android Studio. Di Windows, kami juga mendukung proses debug dan pembuatan profil game Android dengan Visual Studio.

Editor game

Editor game sering kali mengintegrasikan fitur desain game secara erat dengan pengeditan kode, dan terkadang editor ini membantu desainer menyelesaikan tugas pengembangan tanpa perlu menulis kode. Jika Anda mengembangkan game Android pertama, sebaiknya gunakan opsi ini bersama dengan Android Studio. Berikut ini beberapa manfaatnya:

  • UI dan rangkaian alat lebih berfokus pada desain game.
  • Mengintegrasikan desain aset dan tugas pengeditan kode.
  • Berfokus pada bahasa pemrograman atau skrip yang didukung oleh game engine.
  • Mencakup alat pemodelan dan rendering.

Android Studio

Ini adalah IDE resmi untuk mengembangkan aplikasi Android. Karena Android Studio berfokus pada pengembangan Android, sebaiknya Anda menginstalnya bersama IDE lain yang Anda gunakan. Berikut beberapa tugas yang dapat Anda selesaikan dengan Android Studio:

  • Mendebug kode yang ditulis dalam C/C++, Java, atau Kotlin.
  • Mengelola Android SDK yang diperlukan untuk membuat game Android.
  • Mem-build, membuat profil, dan mengoptimalkan game.
  • Mengedit kode C/C++ menggunakan Android NDK.
  • Mengonfigurasikan paket aplikasi dan setelan Google Play.

Untuk informasi selengkapnya, lihat ringkasan Android Studio.

Visual Studio

Jika mengembangkan game di Windows menggunakan Visual Studio, Anda dapat menambahkan Android sebagai target menggunakan Android Game Development Extension untuk Visual Studio (AGDE). Penyiapan ini menargetkan game yang sudah dalam pengembangan menggunakan project Visual C++, sehingga merupakan opsi yang menargetkan developer game yang lebih mahir. Anda dapat menggunakan AGDE untuk melakukan hal berikut:

  • Menggunakan project Visual C++ yang ada untuk membuat game Android.
  • Mendebug dan membuat profil game menggunakan Visual Studio.
  • Menggunakan sistem build terdistribusi seperti Incredibuild atau SN-DBS.

Untuk informasi selengkapnya, lihat ringkasan ADGE.

Android NDK

Android NDK adalah kumpulan alat yang memungkinkan Anda mengembangkan aplikasi Android dalam kode native menggunakan C atau C++. Hal ini dapat meningkatkan performa game dengan memberikan lebih banyak akses langsung ke hardware perangkat. Selain itu, Anda juga dapat menggunakan kembali library C dan C++, serta berbagi kode game di beberapa platform.

NDK diperlukan oleh beberapa library dan alat AGDK, serta banyak game engine saat mengembangkan untuk Android. Salah satu alasannya adalah NDK merupakan cara yang umum dan efektif untuk mengakses API grafis tingkat rendah paling umum yang didukung oleh perangkat Android.

Untuk informasi selengkapnya tentang NDK, lihat dokumentasi Android NDK.

API grafis

Untuk mencapai performa grafis 2D dan 3D terbaik, game Android Anda perlu menggunakan API grafis tingkat rendah untuk berkomunikasi dengan GPU. Opsi yang paling banyak didukung untuk pengembangan game Android adalah OpenGL ES dan Vulkan.

Jika Anda menggunakan game engine yang tidak dimodifikasi yang mendukung pengembangan Android, game engine tersebut kemungkinan besar akan menggunakan OpenGL ES atau Vulkan. Jika menggunakan AGDK untuk mengembangkan game di C atau C++, Anda juga harus menggunakan OpenGL ES atau Vulkan. Selain itu, ini adalah satu-satunya API grafis yang didukung oleh alat pembuatan profil grafis AGI.

OpenGL ES

OpenGL ES memiliki manfaat berikut:

  • Performa tinggi.
  • Tidak terlalu rumit dan lebih mudah digunakan.
  • Mendukung lebih banyak perangkat lama.

Untuk informasi selengkapnya, lihat ringkasan OpenGL ES untuk Android.

Vulkan

Vulkan memiliki manfaat berikut:

  • Performa yang lebih tinggi lagi.
  • Kontrol lebih baik terhadap GPU.
  • Penggunaan CPU yang lebih rendah.

Untuk informasi selengkapnya, lihat ringkasan Vulkan untuk Android.