Android Game SDK: apa itu dan bagaimana menggunakannya di aplikasi Anda

Android Game SDK adalah seri baru perpustakaan Google, yang dirancang untuk membantu memfasilitasi pengembangan game yang lebih baik. Atau setidaknya, itulah yang dijanjikan dalam waktu dekat. Untuk saat ini, game Android SDK sebenarnya hanya perpustakaan: frame rate library Android, tampaknya juga dikenal sebagai "Swappy."

Pengumuman datang pada awal Desember 2019 dan dapat dianggap sebagai inklusi yang sangat dinanti. Mudah-mudahan, iterasi di masa depan akan membantu merampingkan proses pengembangan game, memungkinkan pengembang untuk lebih cepat merancang dan meluncurkan game puzzle, platform, atau bahkan judul 3D tanpa bergantung pada mesin pihak ketiga seperti Unity dan Unreal.

Posting ini akan sering diperbarui ketika item baru ditambahkan ke Android Gaming SDK, jadi silakan periksa halaman ini dan periksa kembali. Untuk saat ini, kita akan melihat Perpustakaan Frame Stimulation.


Cara pustaka paster raster bekerja

Perpustakaan ini dirancang untuk membantu game mempertahankan frame rate yang stabil dengan latensi input minimal. Ini dilakukan dengan menyinkronkan loop rendering game dengan sistem operasi dan subsistem tampilan perangkat keras. Subsistem tampilan bertujuan untuk mengurangi kerusakan yang kadang-kadang dapat terjadi ketika perangkat keras dipindahkan dari satu frame ke frame lain melalui peningkatan. Ini dilakukan dengan buffering frame sebelumnya, mendeteksi pengiriman terlambat, dan mengulangi tampilan frame sebelumnya jika frame terdeteksi terlambat.

Google

Namun, ini dapat menyebabkan ketidakcocokan waktu yang menghasilkan waktu tampilan bingkai yang tidak konsisten. Misalnya, jika bingkai diproses lebih cepat, ini bisa mempersingkat waktu sebelum bingkai di layar. Jika bingkai membutuhkan waktu terlalu lama untuk dirender, maka bingkai tersebut dapat dikirimkan untuk bingkai tambahan.

Frame Pacing Library mengatasi masalah ini dengan menggunakan Android Choreographer API untuk menyinkronkan game dengan subsistem tampilan. Ini dicapai melalui penggunaan ekstensi cap waktu presentasi di API OpenGL dan Vulkan, yang memastikan bahwa kerangka kerja diberikan secara tepat waktu. Ini juga menggunakan pagar sinkronisasi untuk menghindari bantalan buffer. Banyak refresh rate juga didukung, yang memungkinkan pengembang untuk menargetkan berbagai jenis perangkat, termasuk tampilan 90Hz dan 120Hz, dan opsi penyesuaian. Waktu presentasi bingkai disesuaikan secara otomatis sesuai dengan jumlah perangkat keras perangkat.


Cara menggunakan perpustakaan stimulasi game dari Android SDK

Jika game Anda menggunakan Vulkan di OpenGL maka Anda akan dapat menggunakan perpustakaan ini. Untuk melakukan ini, Anda harus terlebih dahulu mengunduh Game Android SDK di sini.

Untuk melihat bagaimana ini bekerja, Anda juga dapat mengunduh contoh Bouncy Ball di sini untuk mencoba OpenGL. Anda dapat menemukan petunjuk untuk Vulkan di sini. Buka proyek, lalu jalankan aplikasi untuk memastikan itu berhasil.

Kemudian hubungkan proyek ke perpustakaan. Untuk pustaka statis, lakukan ini dengan menambahkan gamesdk / termasuk ke kompiler termasuk jalur, dan swappy / swappyGL.h untuk integrasi dengan OpenGL ES. Dalam kebanyakan kasus, file header akan berisi semua fungsi yang diperlukan.

Terakhir, tambahkan jalur berikut ke jalur perpustakaan tautan:

gamesdk/libs/architecture_APIapiLevel_NDKndkVersion_stlVersion_Release

Tentu saja akan bertukar teks tebal dengan prosesor yang sesuai / versi NDK dll.

Menginisialisasi instance Android Frame Pacing menggunakan:

void SwappyGL_init(JNIEnv *env, jobject jactivity);

Dan hancurkan contoh kata-kata dengan:

void SwappyGL_destroy();

Sekarang fungsi-fungsi berikut memungkinkan Anda untuk mengonfigurasi interval pertukaran dan periode pembaruan Anda:

void SwappyGL_setSwapIntervalNS(uint64_t swap_ns);    void SwappyGL_setFenceTimeoutNS(uint64_t fence_timeout_ns);    void SwappyGL_setUseAffinity(bool tf);

Panggil segera setelah diinisialisasi SwappyGL_init (), Yang harus sedekat mungkin ketika mesin diluncurkan. Lewati durasi bingkai ke SwappyGL_setSwapIntervalNS () menggunakan SWAPPY_SWAP_60FPS, SWAPPY_SWAP_30FPSatau SWAPPY_SWAP_20FPS konstanta (jika perlu).

Sekarang ubah frame menggunakan BOOL SwappyGL_swap (Layar EGLDisplay, permukaan EGLSurface). Ini berakhir eglSwapBuffers () Metode yang digunakan oleh Open GL ES, jadi Anda harus mengganti semua instance dengan versi baru.

Anda dapat memeriksa apakah mondar-mandir raster telah diaktifkan kapan saja menggunakan bool SwappyGL_isEnabled ().

Untuk instruksi lebih detail tentang penggunaan pustaka stimulasi bingkai, lihat halaman resmi panduan pengembang Android.

Menggunakan Game Android SDK di Unity

Perpustakaan stimulasi bingkai juga termasuk dalam versi Unity 2019.2 dan di atasnya. Cukup centang kotak Optimasi Frame Pacing di pengaturan Android, dan secara otomatis akan memicu frame rate yang lebih halus untuk game Anda.

Sekali lagi, Unity membuat hidup jauh lebih mudah bagi para pengembang game!


Mencari masa depan

Secara pribadi, saya pikir sudah waktunya bagi Google untuk memberikan penggemar permainan cinta, jadi saya melihat ini sebagai hal yang sangat positif. Bingkai Stimulation Library sendiri kemungkinan merupakan tambahan yang disambut baik, terutama untuk game yang lebih berat yang ingin memberikan grafik kecepatan seperti sutra. Ini adalah awal yang kecil, jadi saya harus membuat beberapa perpustakaan yang sangat berguna dan segera menghadirkan SDK gaming Android Anda.

Lebih Banyak Posting Pengembangan Android

C # Programming Learning

Cara membuat aplikasi non-game di Unity

1 minggu lalu

Pengantar C # untuk Android

Semua berita dan fitur terbaru untuk pengembang Android yang perlu Anda ketahui

3 minggu lalu

Android P Beta

Cara menggunakan gerakan dan navigasi berbasis gerakan di aplikasi Android Anda

4 bulan lalu

Pelajari cara meretas keamanan data

Lindungi privasi pengguna Anda: keamanan aplikasi Android untuk pengembang

4 bulan lalu

pengembangan game

Cara menambahkan grafik 3D dan fitur Unity lainnya ke aplikasi Android asli Anda

5 bulan lalu

Widget untuk layar beranda Android

Buat widget yang dapat digulir untuk aplikasi Android Anda

5 bulan lalu

Sekilas tentang Android Q Beta 5

Tema Gelap, API Termal, dan Gelembung: Siapkan Aplikasi Android 10 Anda

5 bulan lalu

Sekilas tentang Android Q Beta 5

Berita dan fitur pengembang Android yang ditangkap (Juli 2019)

6 bulan lalu

Android Q Beta 4 Slip Direction Notification

Berita dan Fitur Pengembang Android Ditangkap – Juni 2019

7 bulan lalu

Android Game SDK: apa itu dan bagaimana menggunakannya di aplikasi Anda 1

dimulai dari Facebook untuk Android SDK

7 bulan lalu

Pos terkait

Back to top button