Best Practices für ADPF

Das Android Dynamic Performance Framework (ADPF) unterstützt Entwickler dabei, die Überhitzung und Leistung von Geräten proaktiv zu verwalten, indem Spiele mit dem System interagieren, Informationen zur Temperatur (wie vorhergesagter Toleranzbereich) erhalten und das Verhalten beeinflussen. Die intelligente Anpassung mithilfe von ADPF verhindert starke Drosselungen und ermöglicht ein flüssigeres, längeres Gameplay. In diesem Leitfaden findest du praktische Strategien für die effektive Nutzung von ADPF. Der Schwerpunkt liegt auf einer benutzerdefinierten, detaillierten Skalierung, die direkt an die spezifischen Qualitätseinstellungen Ihres Spiels gebunden ist und auf den ADPF-Wärmedaten basiert. Durch die Implementierung dieser Praktiken können Sie proaktiv die Anwendung des Thermalsands verwalten und so Spiele erstellen, die länger funktionieren, was zu einer zuverlässigeren und angenehmeren Erfahrung für die Spieler führt.

Leistungsskalierung anpassen

Die Standardskalierung des ADPF-Plug-ins kann auf allgemeine Suchmaschinenvoreinstellungen wie „Niedrig“, „Mittel“ und „Hoch“ ausgerichtet sein. Wenn in Ihrem Spiel eindeutige Optionen für die Grafikqualität verwendet werden, die sich von diesen Standardeinstellungen unterscheiden, stimmen die Annahmen des Plug-ins nicht mit Ihren Inhalten überein. Du musst die ADPF-Logik anpassen, um die spezifischen Qualitätseinstellungen deines Spiels direkt zu steuern, um ein effektives Wärmemanagement zu ermöglichen. So kannst du dich nicht auf nicht übereinstimmende Standardeinstellungen verlassen. Erstellen Sie mithilfe von ADPF-Daten eine detaillierte Skalierungslogik, um bessere Ergebnisse zu erzielen:

  • Wichtige Hebel identifizieren: Erstellen Sie ein Profil Ihres Spiels, um herauszufinden, welche Grafiken oder Spielfunktionen (Schatten, Auflösung, Partikel, Effekte, Sichtweite) sich am meisten auf die Leistung und Hitze auswirken.
  • Detaillierte Schritte entwickeln: Definieren Sie in den Qualitätsoptionen Ihres Spiels kleine, inkrementelle Anpassungen für einzelne Einstellungen. Wenden Sie diese Änderungen basierend auf der Wärmerückleitung des ADPF (z. B. mithilfe von thermischen Toleranzdaten) nach und nach an, um den Druck auf das System vorsichtig zu reduzieren, bevor eine starke Drosselung auftritt.
Renderingproblem mit ADPF in Unity MegaCity Metro.

Das vorherige Video zeigt ein Renderingproblem mit ADPF in Unity MegaCity Metro. Da ADPF die Entfernung basierend auf der allgemeinen Spiel-Engine-Reichweite und nicht anhand eines Bereichs anpasst, der für den jeweiligen Spielinhalt geeignet ist, wird die Entfernung sehr niedrig, wenn sich das Gerät erwärmt. Dadurch wird ein Problem verursacht, dass Gebäude nicht mehr sichtbar sind.

Einstellungen für isolierte Grafiken

Vermeiden Sie drastische Änderungen der Voreinstellungen. Die unabhängige Anpassung der einzelnen Grafikeinstellungen ermöglicht eine feinere Steuerung und eine flüssigere Reaktion auf Temperaturbedingungen. Hier sind einige Tipps zum Anpassen der Einstellungen:

  • Auswirkungen priorisieren: Konzentrieren Sie sich bei der Skalierung auf die Einstellungen in Ihren Qualitätsoptionen, die bei der Profilerstellung die größten Auswirkungen auf den Heizungs- oder Betriebszustand haben.
  • Einstellungen entkoppeln: Ändern Sie nach Bedarf Einstellungen wie Schatten, Auflösung und Partikel unabhängig voneinander.
  • Reibungslose Übergänge: Wenn möglich, werden die visuellen Einstellungen über mehrere Frames hinweg schrittweise angepasst, damit sie weniger aufdringlich wirken.

Hier erfahren Sie, wie Netmarble das ADPF-Framework genutzt hat, um "Game of Thrones: Kingsroad" zu optimieren. Sie implementierten eine dynamische Skalierung der Auflösung und adaptive Framerate-Anpassungen.

Nutzern Kontrolle geben

Einige Spieler bevorzugen konsistente Bilder gegenüber dynamischen Anpassungen. Biete eine Option zum Deaktivieren der ADPF-gesteuerten Skalierung an:

  • Option implementieren: Fügen Sie im Grafikmenü eine deutlich gekennzeichnete Einstellung hinzu, z. B. „Dynamische Leistungsanpassung aktivieren“.
  • Erläutern Sie die Wahl: Beschreiben Sie kurz, dass automatische Qualitätsanpassungen für eine bessere Leistung und ein besseres Wärmemanagement möglich sind.
  • Verhalten definieren: Wenn diese Option aktiviert ist (empfohlene Standardeinstellung), wird Ihre benutzerdefinierte ADPF-Skalierungslogik ausgeführt. Wenn diese Option deaktiviert ist, verwendet das Spiel nur die manuell ausgewählten Einstellungen des Nutzers und ignoriert bei der Skalierung Temperaturdaten.

Geräteübergreifend testen

Die Wärmekapazität und -leistung von Android-Hardware schwankt erheblich. Testen Sie gründlich auf verschiedenen Gerätetypen:

  • Gerätestufen definieren: Testen Sie auf repräsentativen High-End-, mittleren und Low-End-Geräten verschiedener Hersteller und SoC-Anbieter.
  • Wärmereaktion testen: Beobachten Sie, wie verschiedene Geräte die Last verarbeiten und wie effektiv Ihre ADPF-Logik (und die Ein/Aus-Schaltfläche des Nutzers) auf jeder Stufe ist.
  • Leistungsziele validieren: Sorgen Sie dafür, dass das Spiel die Leistungsziele auf jeder Stufe mit aktivem ADPF erreicht und dass das Spiel bei Deaktivierung wie vorgesehen funktioniert.
  • Feedback einholen: Nutzen Sie Betaprogramme, um Leistungs- und Wärmedaten von verschiedenen realen Geräten zu erfassen.

Leistung überwachen und wiederholen

Die Implementierung des ADPF erfordert eine fortlaufende Überwachung und Optimierung, um ein Gleichgewicht zwischen kontinuierlicher Leistung, Temperaturgrenzwerten und visueller Qualität herzustellen:

  • Baselines und Ziele festlegen: Definieren Sie eine akzeptable Leistung (Ziel-fps, Framezeiten) und messen Sie das Verhalten zuerst ohne ADPF-Logik.
  • Profiling-Tools verwenden: Nutze regelmäßig Android Studio Profiler, Tools von GPU-Anbietern und In-Game-Overlays, um die FPS, Frame Time und ADPF-Wärmedaten während des Spiels zu verfolgen.
  • Experimentieren und abstimmen: Testen Sie verschiedene ADPF-Antwortstrategien. Legen Sie fest, wie schnell und aggressiv Einstellungen basierend auf der thermischen Eingabe skaliert werden, um die optimale Balance für Ihr Spiel zu finden.
  • Testen Sie lange Sitzungen: Achten Sie darauf, dass die Tests eine längere Spielzeit (mehr als 15 Minuten) umfassen, um eine anhaltende Lastleistung und thermische Stabilisierung bei aktivem ADPF zu beobachten.