Oyun motorlarını özelleştirme veya taşıma hakkında

Araçlar, yıldızlar, gezegen Oyun motoru geliştirmek ya da özelleştirmek için C veya C++ kullanıyorsanız Android desteğini oyun motorunuza entegre etmek için aşağıdaki gereksinimler çok önemlidir.

  • Android geliştirme araçlarından yararlanın
  • Etkinlik oluşturma
  • Ekrana çizin
  • İşlem girişi etkinlikleri
  • Ses çıkışı
  • Hafızayı yönet
  • Test edin ve iyileştirin
  • Google Play'de yayınla

Bu sayfada açıklanan gereksinimler, sıfırdan oyun motoru geliştirmeyi değil, Android'in diğer platformlara kıyasla görece benzersiz olduğu alanları tanımlar.

Android geliştirme araçlarından yararlanın

Android Studio, aşağıdaki işlemleri gerçekleştirmek için kullanabileceğiniz araçlar içerir:

  • Projenizi yapılandırın
  • Oyununuzu geliştirin, hatalarını ayıklayın ve paketleyin
  • Sistem, CPU ve bellek profil araçlarını kullanarak oyununuzun performansını inceleme
  • Oyununuzun paketinin veya uygulama paketinin içeriğini inceleme
  • Android SDK ve NDK'nın ek özelliklerini entegre etme

Android Grafik Denetleyici, oyununuzun oluşturma performansını karakterize edebilir ve kare profil çıkarmayı kullanarak oluşturulan karelerin ayrıntılarını araştırmanıza yardımcı olabilir.

Ağırlıklı olarak Microsoft Visual Studio kullanıyorsanız mevcut projelere bir Android hedefi eklemek için Android Game Development Extension'ı (AGDE) kullanabilirsiniz. AGDE, Visual Studio'da yerel hata ayıklamayı destekler ve Android Studio profil oluşturma araçlarının çoğunun bağımsız sürümlerini içerir.

Etkinlik oluşturma

Oyununuzun bir Activity oluşturması ve bununla etkileşimde bulunması gerekir. Bir Etkinliğin ne zaman oluşturulduğunu, başlatıldığını, devam ettirildiğini, duraklatıldığını, durdurulduğu ve kaldırıldığını anlamak için Android'de Etkinlik Yaşam Döngüsü hakkında bilgi edinin.

Yerel C veya C++ oyun motorlarının Activity ile ilgili ihtiyaçlarını (oyun penceresi, yaşam döngüsü, oluşturma, etkinlikleri işleme) entegre eden ve karşılayan GameActivity kitaplığı hakkında bilgi edinin.

Ekrana çizin

Oyununuzun ekranda nesneler ve imgeler çizmesi gerekiyor. Android SurfaceView ve oyun motorunuzda grafikleri yapılandırma hakkında bilgi edinin.

Android cihazlar farklı ekran yenileme hızlarını destekler. Kare düşüşlerini ve çerçeve arabellek hatalarını önlemek için oyun döngülerinde oluşturma hakkında bilgi edinin.

OpenGL ve Vulkan'da sorunsuz oluşturma için kare hızına nasıl ulaşacağınızı öğrenin. Performance Tuner ile kare hızınızı optimize edin.

İşlem girişi etkinlikleri

Bir oyun motoru, giriş etkinliklerini çeşitli kaynaklardan alır. Etkileyici bir oyun deneyimi için farklı Android giriş kaynaklarını desteklemeyi öğrenin:

Ses çıkışı

Oyun motorunuzun farklı cihazlarda ve Android sürümlerinde ses çıkışı yapması gerekir. Oyununuza yüksek performanslı ses eklemek için açık kaynak C++ ses kitaplığımız Oboe hakkında bilgi edinin.

En düşük gecikmeyi elde etmek, belirli ses hatalarından kaçınmak ve mevcut en iyi yerel kitaplığı (ör. AAudio veya OpenSL ES) otomatik olarak seçmek için Oboe'yu kullanın.

Hafızayı yönet

Android cihazlarda sistem, mümkün olduğunca fazla sistem belleği (RAM) kullanmaya çalışır ve gerektiğinde yer açmak için çeşitli bellek optimizasyonları gerçekleştirir. Oyununuzun yavaşlamasını veya oyundan çıkmayı önlemek için bellek kullanımını yönetmeyi öğrenin.

Test edin ve iyileştirin

İşlenmemiş bir istisna veya sinyalden kaynaklanan beklenmedik bir çıkış olduğunda Android uygulaması kilitlenir. Kilitlenmeleri algılayıp teşhis etmeyi, yığın izlemeleri, bellek ve ağ istisnalarını okumayı, logcat'i kullanmayı, Java ve Kotlin'e özgü hataları anlamayı öğrenin.

Google Play'de yayınla

Oyuncular oyununuzu farklı ülkelerdeki çeşitli Android cihazlar, ağ koşulları ve veri planları ile indirir. Google Play'i, içerik yayınlama ağının avantajlarından yararlanarak büyük oyunlar için uygulama paketleri ve öğe paketleri sunmak için nasıl kullanacağınızı öğrenin.