Android Dynamic Performance Framework (ADPF) membantu developer mengelola termal dan performa perangkat secara proaktif dengan mengizinkan game berinteraksi dengan sistem, menerima insight termal (seperti prediksi headroom), dan memengaruhi perilaku. Adaptasi cerdas menggunakan ADPF mencegah throttling yang parah dan memungkinkan gameplay yang lebih lancar dan lebih lama. Panduan ini berisi strategi praktis untuk menggunakan ADPF secara efektif. Fitur ini berfokus pada penskalaan kustom dan terperinci yang terkait langsung dengan setelan kualitas spesifik game Anda dan didorong oleh data termal ADPF. Dengan menerapkan praktik ini, Anda dapat secara proaktif mengelola termal dan membuat game yang berperforma lebih baik dalam waktu lama sehingga menghasilkan pengalaman yang lebih andal dan menyenangkan bagi pemain.
Menyesuaikan penskalaan performa
Penskalaan plugin ADPF default dapat menargetkan preset mesin generik, misalnya, Rendah, Sedang, dan Tinggi. Jika game Anda menggunakan opsi kualitas grafis unik yang berbeda dengan default tersebut, asumsi plugin tidak akan cocok dengan konten Anda. Anda harus menyesuaikan logika ADPF untuk mengontrol langsung setelan kualitas khusus game untuk pengelolaan termal yang efektif, bukan mengandalkan default yang salah cocok. Buat logika penskalaan yang mendetail menggunakan data ADPF untuk mendapatkan hasil yang lebih baik:
- Identifikasi indikator utama: Buat profil game untuk menemukan fitur grafis atau gameplay (bayangan, resolusi, partikel, efek, jarak pandang) yang paling memengaruhi performa dan panas.
- Kembangkan langkah-langkah terperinci: Tentukan penyesuaian kecil dan inkremental untuk setiap setelan dalam opsi kualitas game Anda. Terapkan perubahan ini secara bertahap berdasarkan masukan termal dari ADPF (misalnya, memanfaatkan data headroom termal) untuk mengurangi tekanan pada sistem secara perlahan sebelum throttling parah terjadi.
Video sebelumnya menunjukkan masalah rendering dengan ADPF di Unity MegaCity Metro. Karena ADPF menyesuaikan jarak tampilan berdasarkan rentang mesin game umum, bukan rentang yang sesuai untuk konten game tertentu, jarak tampilan menjadi terlalu rendah saat perangkat memanas, yang menyebabkan masalah ketika bangunan tidak lagi terlihat.
Membatasi setelan grafis
Hindari perubahan preset yang drastis. Menyesuaikan setelan grafis individual secara independen akan memberikan kontrol yang lebih baik dan pengalaman yang lebih lancar saat merespons kondisi termal. Berikut beberapa tips saat menyesuaikan setelan:
- Prioritaskan dampak: Fokuskan upaya penskalaan pada setelan dalam opsi kualitas Anda yang memiliki dampak termal atau performa paling signifikan yang diidentifikasi selama pembuatan profil.
- Setelan pemisah: Ubah setelan seperti bayangan, resolusi, dan partikel secara terpisah dan berurutan sesuai kebutuhan.
- Transisi lancar: Jika memungkinkan, transisikan setelan visual secara bertahap dalam beberapa frame agar tidak terlalu mengganggu.
Lihat cara Netmarble menggunakan ADPF untuk mengoptimalkan "Game of Thrones: Kingsroad". Mereka menerapkan penskalaan resolusi dinamis dan penyesuaian kecepatan frame adaptif.
Memberikan kontrol kepada pengguna
Beberapa pemain lebih memilih visual yang konsisten daripada penyesuaian dinamis. Tawarkan opsi untuk menonaktifkan penskalaan berbasis ADPF:
- Terapkan opsi: Tambahkan setelan yang diberi label dengan jelas (misalnya, "Aktifkan Penyesuaian Performa Dinamis") di menu grafis.
- Jelaskan pilihannya: Jelaskan secara singkat bahwa opsi ini memungkinkan penyesuaian kualitas otomatis untuk performa dan pengelolaan termal yang lebih lancar.
- Tentukan perilaku: Jika diaktifkan (default yang direkomendasikan), logika penskalaan ADPF kustom akan berjalan. Jika dinonaktifkan, game hanya menggunakan setelan yang dipilih secara manual pengguna dan mengabaikan data termal untuk penskalaan.
Menguji di berbagai perangkat
Hardware Android sangat bervariasi dalam kapasitas dan performa termal. Uji secara menyeluruh di berbagai jenis perangkat:
- Menentukan tingkat perangkat: Uji perangkat kelas atas, kelas menengah, dan kelas bawah yang representatif dari berbagai produsen dan vendor SoC.
- Menguji respons termal: Amati cara berbagai perangkat menangani beban dan seberapa efektif logika ADPF (dan tombol pengguna) di setiap tingkat.
- Validasi target performa: Pastikan game memenuhi sasaran performa di setiap tingkat dengan ADPF aktif, dan berperilaku dapat diprediksi saat dinonaktifkan.
- Kumpulkan masukan: Gunakan program beta untuk mengumpulkan data performa dan termal dari berbagai perangkat di dunia nyata.
Memantau performa dan melakukan iterasi
Penerapan ADPF memerlukan pemantauan dan penajaman berkelanjutan untuk menyeimbangkan performa berkelanjutan, batas termal, dan kualitas visual:
- Menetapkan dasar pengukuran dan target: Tentukan performa yang dapat diterima (FPS target, waktu render frame) dan ukur perilaku tanpa logika ADPF terlebih dahulu.
- Menggunakan alat pembuatan profil: Gunakan Profiler Android Studio, alat vendor GPU, dan overlay dalam game secara rutin untuk melacak FPS, waktu render frame, dan data termal ADPF selama gameplay.
- Bereksperimen dan menyesuaikan: Uji berbagai strategi respons ADPF. Sesuaikan skala setelan dengan cepat dan agresif berdasarkan input termal guna menemukan keseimbangan optimal untuk game Anda.
- Menguji sesi yang lama: Pastikan pengujian mencakup waktu putar yang diperpanjang (15+ menit) untuk mengamati performa pemuatan berkelanjutan dan stabilisasi termal dengan ADPF aktif.