Güç verimliliğini optimize etme

Android oyunları genellikle telefon veya tablet gibi pille çalışan cihazlarda oynanır. Kullanıcıların oyununuzu daha uzun süre oynamasına yardımcı olmak ve cihazları tam şarjlı olmasa bile oyun oturumu başlatma konusunda güven kazanmalarını sağlamak için oyununuzun güç verimliliğini optimize edin.

Optimum ekran yenileme hızı kullanma

Ekran yenileme hızı, bir cihazın ekran panelinin yeni bilgileri göstermek için değişebileceği hızdır. El cihazları geleneksel olarak 60 Hz yenileme hızı kullanır ve ekran içeriğini saniyede altmış kez günceller. Modern cihazlar genellikle 90 Hz veya 120 Hz'de güncellenebilen daha yüksek yenileme hızına sahip ekranlara sahiptir. Daha yüksek yenileme hızları, kaydırma gibi işlemlerde daha akıcı kullanıcı deneyimleri sağlar ancak ekran panelinin güç tüketimini artırır.

Oyunların hedef kare hızı genellikle saniyede 30 veya 60 karedir. Ekran yenileme hızı, oyunun hedef kare hızından yüksekse daha yüksek yenileme hızından hiçbir fayda elde edilemez, yalnızca güç tüketimi artar. Yüksek yenileme hızına sahip cihazlarda ekran yenileme hızını, oyununuzun hedef kare hızıyla mümkün olduğunca eşleşecek şekilde ayarlayın.

Swappy kare hızlandırma kitaplığını entegre etme veya etkinleştirme

Android Game Development Kit (AGDK), Swappy olarak bilinen bir kare hızlandırma kitaplığı içerir. Swappy, cihazın ekran yenileme hızını oyun kare hızınıza mümkün olduğunca yakın olacak şekilde optimize eder. Özel bir oyun motoru kullanıyorsanız kitaplığı motorunuza nasıl entegre edeceğinizi öğrenmek için Frame Pacing Kitaplığı kılavuzunu inceleyin.

Swappy, Unreal motoruna (Mobil Cihazlar İçin Kare Hızı) ve Unity motoruna (PlayerSettings.Android.optimizedFramePacing) entegre edilmiştir ve oyun projenizde etkinleştirildiyse ekran yenileme hızını optimize eder.

Android kare hızı API'sini çağırma

Kare hızlandırma kitaplığını entegre etmenin alternatifi olarak, ekran yenileme hızını doğrudan ayarlamak için Android kare hızı API'sini kullanın.

Grafikler için Vulkan API'yi kullanma

Android iki grafik API'sini destekler: eski OpenGL ES API ve daha yeni Vulkan API. Vulkan artık Android'deki birincil grafik API'sidir ve OpenGL ES'ten daha verimlidir. Vulkan'ın avantajları ve nasıl kullanılacağı hakkında daha fazla bilgi için Grafik için Vulkan'ı kullanma başlıklı makaleyi inceleyin.

Cihazın termal koşullarına yanıt verme

Cihazın CPU ve GPU'sunun yüksek kullanımı ısı oluşturur. Cihaz ısındıkça güç verimliliği düşer. Cihaz aşırı ısınırsa güç tüketimini azaltmak ve cihazın soğumasını sağlamak için CPU ve GPU hızını düşürür. Termal kısıtlama olarak adlandırılan bu davranış, oyununuzun performansını ve pil tüketim hızını etkiler. Isıtma sınırlamasını önlemek için oyununuzun iş yükünü ayarlamak amacıyla cihazın termal durumunu izlemek için Android Thermal API'yi kullanın.

Cihazın oyun modunu sorgulayın

Oyun Modu, kullanıcının performans ile pil ömrü arasında tercih yapmasını veya nötr bir varsayılan ayar seçmesini sağlayan bir özelliktir. Oyununuz değişken performans yapılandırmalarını destekliyorsa bu tercihi kontrol etmek ve oyun ayarlarınızı buna göre değiştirmek için Game Mode API'yi kullanın.

Ek kaynaklar

Android Studio güç profilleyici

Unity güç verimliliği demo örneği (GitHub)