Dua smartphone dengan harga mirip belum tentu menjalankan game dengan performa yang sama.
Chipset, GPU, pendinginan, resolusi layar, kapasitas RAM, bahkan desain bodi dapat memengaruhi kemampuan perangkat mempertahankan frame rate.
Masalahnya semakin rumit ketika game harus berjalan di ratusan model Android. Menggunakan Adaptive Quality membantu developer keluar dari pendekatan “satu setting untuk semua”.
Game dapat memulai dari profil kualitas tertentu, mengukur kondisi aktual perangkat, lalu mengubah beberapa parameter secara bertahap agar visual tetap menarik tanpa membuat CPU dan GPU terus bekerja di luar batas.
Gabungkan Device Profile dan Runtime Adaptation
Adaptive quality sebaiknya tidak dimulai dari kondisi yang sama untuk semua smartphone.
Gunakan device profile sebagai titik awal.
Perangkat dengan GPU kuat dapat memulai pada High, kelas menengah pada Medium, dan perangkat minimum menggunakan Low. Setelah gameplay berjalan, runtime system melakukan fine-tuning berdasarkan kondisi aktual.
Unreal Engine menggunakan Device Profiles dan scalability settings untuk mengatur kualitas berdasarkan hardware.
Dokumentasinya menjelaskan bahwa fitur seperti shadow, foliage, dan mesh detail dapat dikelompokkan dalam level kualitas lalu dipetakan ke perangkat tertentu.
Pendekatan dua tahap ini lebih efisien dibanding selalu memulai dari setting maksimum lalu menurunkannya.
Device profile memberikan baseline, sedangkan adaptive quality menangani perubahan thermal dan workload saat bermain.
Buat Quality Ladder yang Granular
Low, Medium, dan High cukup untuk menu pemain, tetapi sistem internal sebaiknya bisa bekerja lebih halus.
Misalnya developer membuat level adaptasi 0 sampai 5.
Level 5 menggunakan shadow penuh, particle tinggi, resolution 100%, dan foliage distance maksimal. Level 4 mungkin hanya menurunkan shadow distance. Level 3 menurunkan particle serta resolution menjadi 90%.
Dengan langkah kecil, perubahan visual tidak terasa mengejutkan.
Unreal menyediakan scalability untuk kualitas individual seperti shadow, foliage, mesh, dan efek, sementara mobile renderer sendiri dirancang menggunakan model yang lebih sederhana dan performance-oriented dibanding jalur desktop.
Jangan menjadikan semua parameter bergerak bersamaan.
Jika satu penurunan resolution scale sudah mengembalikan frame time ke target, sistem tidak perlu sekaligus menghilangkan shadow dan particle.
Prioritaskan Fitur berdasarkan Cost dan Visual Impact
Adaptive quality yang bagus harus memahami dua hal: seberapa mahal fitur tersebut dan seberapa penting fitur itu bagi pemain.
Buat matriks sederhana.
Shadow mungkin mahal tetapi sangat penting untuk game stealth. Foliage density bisa mahal tetapi hanya dekoratif pada game balapan. Motion blur mungkin murah di satu renderer tetapi sama sekali tidak dibutuhkan desain visual.
Unreal mobile performance guidelines menunjukkan bahwa material, texture lookup, translucent surface, dan berbagai fitur lighting bisa membawa biaya signifikan pada hardware mobile.
Profiling tetap diperlukan karena biaya fitur berbeda menurut scene dan GPU.
Jangan menghapus fitur berdasarkan reputasi bahwa fitur tersebut “berat”. Ukur dahulu, kemudian susun prioritas penurunan.
Dengan cara itu, adaptive quality mempertahankan visual yang benar-benar memberi nilai.
Gunakan Thermal Headroom sebelum Throttling Terjadi
Sistem adaptif yang hanya melihat FPS bekerja secara reaktif.
Thermal headroom memungkinkan pendekatan lebih prediktif.
Android menyediakan estimasi thermal headroom yang menunjukkan seberapa dekat perangkat terhadap tingkat throttling tertentu.
Dokumentasinya bahkan menyediakan forecast agar aplikasi dapat memperkirakan kondisi beberapa detik ke depan pada perangkat yang mendukungnya.
Misalnya FPS masih 60, tetapi thermal headroom terus naik menuju batas berat.
Sistem dapat menurunkan shadow satu tingkat lebih awal sehingga konsumsi daya sedikit turun.
Jika dibiarkan, perangkat mungkin mencapai throttling lalu CPU dan GPU menurunkan frekuensi secara drastis. Pada tahap tersebut, kualitas perlu diturunkan lebih jauh hanya untuk mengembalikan performa.
Adaptasi kecil sebelum masalah biasanya jauh lebih halus.
Tentukan FPS Berdasarkan Sustainability
Layar 120 Hz tidak berarti game harus selalu mengejar 120 FPS.
Frame rate tinggi meningkatkan frekuensi pekerjaan CPU dan GPU serta dapat meningkatkan penggunaan daya.
Android memungkinkan aplikasi game memilih frame rate yang sesuai dan bahkan memberikan contoh game yang membatasi diri pada 60 Hz untuk mengurangi penggunaan daya serta memperpanjang sesi bermain pada display yang sebenarnya berjalan lebih tinggi.
Unreal juga memungkinkan frame pace ditentukan per perangkat melalui Device Profiles.
Adaptive quality dapat menggunakan beberapa target.
Contohnya, Performance Mode mengejar 60 FPS, sementara Battery Mode menggunakan 30 atau 45 FPS. Ketika kondisi thermal sangat berat, game dapat menurunkan target daripada terus memangkas visual.
Target FPS yang realistis sering lebih efektif daripada memaksa kualitas visual terus turun.
Hindari Perubahan Visual yang Mudah Terlihat
Sistem adaptif yang terlalu agresif bisa mengganggu immersion.
Bayangkan pemain berjalan di hutan dan tiba-tiba seluruh shadow hilang, pepohonan berubah, resolusi turun, lalu beberapa detik kemudian semuanya kembali.
Gunakan transisi bertahap.
Resolution scale dapat bergerak sedikit demi sedikit. Draw distance bisa berubah ketika kamera sedang berpindah area. Particle density dapat diterapkan hanya pada efek baru, bukan menghilangkan efek yang sedang terlihat.
LOD juga dapat disesuaikan melalui threshold yang tidak terlalu mencolok.
Gunakan Cooldown untuk Setiap Perubahan
Setelah menurunkan kualitas, tunggu beberapa detik sebelum membuat keputusan baru.
Berikan waktu agar sistem melihat dampak perubahan tersebut terhadap frame time dan thermal.
Tanpa cooldown, beberapa scaler dapat bereaksi bersamaan dan membuat konfigruasi terus berubah.
Misalnya resolution turun, FPS naik, shadow langsung naik, FPS turun lagi, lalu resolution kembali turun.
Stabilitas parameter sama pentingnya dengan stabilitas FPS.
Jangan Hanya Mengoptimalkan GPU
Adaptive quality sering diasosiasikan dengan graphics settings, padahal mobile game bisa CPU-bound.
Banyak NPC, pathfinding, physics, animation, atau script update dapat menjadi masalah utama.
Adaptive system bisa menurunkan frekuensi update NPC jauh, mengurangi jumlah physics query, menurunkan animation update rate, atau mengurangi jumlah entity dekoratif aktif.
Android Performance Hint Manager dirancang untuk workload periodik seperti produksi frame. Aplikasi dapat melaporkan target work duration dan actual duration agar sistem memiliki informasi lebih baik untuk mengalokasikan resource sesuai kebutuhan.
Pada perangkat Android 16 yang mendukungnya, CPU dan GPU headroom juga dapat memberikan gambaran resource yang masih tersedia.
Adaptive quality sebaiknya dipahami sebagai adaptive workload, bukan hanya dynamic graphics.
Pantau Memori Bersama Quality Scaling
Menurunkan resolution scale tidak menyelesaikan masalah ketika game sudah hampir kehabisan RAM.
High quality biasanya juga membawa texture, mesh, atau asset dengan ukuran lebih besar.
Android menekankan pentingnya memory optimization untuk menjaga stabilitas game serta mencegah proses dihentikan ketika penggunaan memory terlalu tinggi.
Panduan terbaru juga merekomendasikan profiling serta pengurangan footprint berdasarkan kebutuhan hardware.
Quality tier dapat menentukan texture mip bias, asset resolution, atau jumlah content yang dipertahankan di memory.
Namun penggantian asset runtime perlu dirancang hati-hati.
Loading texture baru justru dapat menghasilkan stutter jika dilakukan tepat saat gameplay sedang berat.
Gunakan preload atau pergantian ketika pemain masuk area baru agar perubahan lebih aman.
Validasi dengan Telemetry Perangkat Nyata
Laboratorium hanya memberikan sebagian gambaran.
Setelah game masuk beta atau soft launch, kumpulkan telemetry berdasarkan device class.
Pantau frame time, thermal event, quality level, memory, crash, dan berapa lama sistem berada pada setiap tier.
Android vitals menyediakan data kualitas aplikasi seperti stability, performance, battery, dan memory yang dapat membantu developer memahami masalah di perangkat pengguna nyata.
Jika sebagian besar pengguna satu chipset selalu turun dari High ke Low dalam lima menit, baseline profilnya mungkin terlalu tinggi.
Sebaliknya, jika perangkat tertentu selalu memiliki thermal headroom besar, game bisa memulai dari tier lebih tinggi.
Inilah kelebihan adaptive quality: setting tidak harus dibekukan selamanya.
Gunakan telemetry untuk terus memperbaiki profil pada update berikutnya dan lakukan penggunan data secara terukur, bukan sekadar berdasarkan nama chipset.
Menggunakan Adaptive Quality yang efektif membutuhkan kombinasi device profile, runtime telemetry, thermal headroom, quality ladder, dan frame pacing.
Turunkan workload secara bertahap serta prioritaskan fitur dengan dampak visual paling kecil. Jangan lupa CPU dan memory, bukan hanya GPU.
Mulailah dengan beberapa tier sederhana, uji di perangkat nyata, lalu gunakan telemetry untuk menyempurnakan sistem pada setiap update.