Erste Schritte mit der Spieleentwicklung in Unity

In diesem Leitfaden wird ein typischer Entwicklungszyklus bei Spielen beschrieben. Nachdem Sie diesen Leitfaden gelesen haben, kann es hilfreich sein, die Anleitung auch als Referenz heranzuziehen.

Wenn Sie mit Unity arbeiten, besteht der Entwicklungszyklus aus drei Phasen:

  • Planen und entwerfen
  • Entwickeln und testen
  • Veröffentlichen und verwalten

Planen und entwerfen

In der Planungs- und Designphase entscheiden Sie, wie Sie Ihr Spiel entwickeln. Sie entscheiden, wie Sie die Herausforderungen der mobilen Entwicklung angehen, und legen die Tools und Prozesse fest, die bei der Entwicklung verwendet werden sollen.

Input von allen Teammitgliedern einholen

Arbeiten Sie mit Ihren Kunst-, Technik-, Design-, Audio- und Produktionsteams zusammen, um Implementierungsaufgaben zu identifizieren und aufzuzeichnen. Beispiele:

  • Kunstteams können Budgets für Asset-Texturen und Mesh-Netzwerke für Charaktere und Umgebungen erstellen.
  • Das Engineering-Team könnte Arbeitsspeicher- und Leistungskontrollpunkte für die Profilerstellung für jede Plattform festlegen.
  • Das Design könnte die Spielmechaniken planen, die das Erlebnis ermöglichen.
  • Audioexperten können Anforderungen an die Kontinuität zwischen UI-, 2D- und 3D-Raumklangn prüfen.
  • Die Produktion kann die Anforderungen für die Markteinführung kommunizieren und das Team auf Kurs halten.

Design für Mobilgeräte

Die Anwendungsentwicklung für mobile Plattformen umfasst bestimmte Aspekte, wie zum Beispiel:

  • Variable Bildschirmseitenverhältnisse
  • Energieverbrauch
  • Thermische und Prozessordrosselung
  • Eingabe per Berührung
  • Plattformübergreifende Entwicklung
  • Grafik-APIs (Vulkan oder OpenGL ES)

Weitere Informationen zu Überlegungen speziell für das Design für Mobilgeräte finden Sie unter Android-Entwicklung in Unity von Unity und in der Google Play Academy.

Entwickeln und testen

In der Entwicklungs- und Testphase erstellen Sie Ihr Spiel und bereiten sich auf Tests und die Vorbereitung vor der Veröffentlichung vor. Sie führen einige begrenzte interne Tests bei Google Play durch, um sich darauf vorzubereiten, die Anforderungen für die Markteinführung zu erfüllen. Sie optimieren Ihre Bereitstellungsstrategie und organisieren Assets in Unity basierend auf den Systemen Play Asset Delivery und Addressables von Unity.

In den folgenden Abschnitten werden Unity-Tools und -Techniken beschrieben, die Ihnen bei der Entwicklung für Android helfen sollen.

Renderingzeit

Beim Rendern werden die 3D- und 2D-Assets aus Ihrer Unity-Szene auf dem Bildschirm gezeichnet. Auch wenn die Unity-Engine das Rendering übernimmt, ist es wichtig, einige Faktoren für die Android-Plattform zu berücksichtigen.

Texturen

Bestimmen Sie, ob Sie die größten Texturgrößen basierend auf Ihren Zielgeräten benötigen. Wenn Sie ein Profil für die Arbeitsspeicherzuweisung erstellen, sehen Sie sich die möglichen Einsparungen an, die durch eine Änderung der Zieltexturgröße eingespart werden können.

Frame Time

Um eine Überhitzung auf Android-Geräten zu vermeiden, sollten Sie Frame-Time-Werte von durchschnittlich unter 21 Millisekunden festlegen. Manchmal, z. B. beim Laden oder bei kurzen Kinoerlebnissen, können die Framezeiten 21 Millisekunden überschreiten. Sie sollten jedoch für das zentrale Spielerlebnis unter dem Grenzwert von 21 Millisekunden bleiben.

Auf mobilen Plattformen drosselt die erzwungene VSync die Framerate, wenn Sie das Mindestziel nicht erreichen. Wenn Sie beispielsweise bei einem Bildschirmupdate von 60 Hz keine 60 fps erreichen, wird Ihr Spiel auf 30 gedrosselt. Wird die 30 fps nicht erreicht, wird es auf 15 gedrosselt.

Viele Android-Geräte werden mit einer Aktualisierungsrate von 60 Hz und 120 Hz geliefert. Wägen Sie die Vorteile ab, die bei deutlich kürzeren Framezeiten angestrebt werden (Ziel: 10 ms für eine Aktualisierung bei 60 Hz und 5 ms für 120 Hz), ohne dass das Risiko einer thermischen Drosselung und einer Entladung des Akkus für höhere Rendering-Raten entsteht.

Wenn Sie eine bestimmte Framerate für Ihr Spiel in Unity festlegen möchten, verwenden Sie Application.targetFrameRate.

Die Frame Pacing-Bibliothek von Android hilft Ihnen, ein reibungsloses Rendering zu ermöglichen, wenn Ihre App länger braucht, um den nächsten Frame zu präsentieren, als es die Bildschirmaktualisierungsrate erfordert. Bei Unity-Versionen 2021 und höher wird durch das Aktivieren der Android-Frame-Taktung die Display-Aktualisierungsrate auf die beste Anpassung an die Ziel-Framerate gesetzt. Dadurch wird der Akku des Spiels nicht durch unnötige Display-Updates verschwendet.

Klicken Sie zum Aktivieren der Bibliothek unter Projekteinstellungen > Player unter Einstellungen für Android das Kästchen Optimierte Frame-Taktung an.

Dialogfeld mit Projekteinstellungen > Playereinstellungen > Optimiertes Fame-Pacing
Abbildung 1: Optimierte Frame-Pacing ist in Unity 2019.2 und höher unter Player Settings (Spielereinstellungen) verfügbar.

Vulkan API

Vulkan ist eine plattformübergreifende, leistungsstarke 3D-Grafik-API, die im Vergleich zu OpenGL ES einen geringen Aufwand hat. Unity kann Vulkan auf zwei Arten einsetzen.

Auto Graphics API

Sie können die Auto Graphics API mit Vulkan verwenden. Dieses Verhalten kann jedoch je nach installierter Unity-Version variieren. Du kannst dies unter Projekteinstellungen > Player > Rendering auswählen.

Beachten Sie bei der Auswahl der zu verwendenden Unity-Version die folgenden Überlegungen:

  • Vulkan 2021.1 und frühere Versionen unterstützen Vulkan mit der Auto Graphics API nicht. Unity versucht, OpenGL ES 3.2 zu verwenden. Wenn das Gerät OpenGL ES 3.2 nicht unterstützt, verwendet Unity in dieser Reihenfolge OpenGL ES 3.1, 3.0 oder 2.0.
  • Unity 2021.2 und höher verwenden zuerst Vulkan. Wenn das Gerät Vulkan nicht unterstützt, greift Unity auf OpenGL ES 3.2, 3.1, 3.0 oder 2.0 zurück.
Projekteinstellungen > Playereinstellungen > Rendering > Auto Graphics API
Abbildung 2. Auto Graphics API-Einstellung.

Manuelle Grafik-APIs

Alternativ können Sie Vulkan manuell aktivieren, indem Sie die Auto Graphics API deaktivieren. Wenn Sie Unity 2021.1 oder eine frühere Version verwenden, ist dies die einzige Möglichkeit, Vulkan zu verwenden.

Wenn Vulkan in dieser Liste höher als OpenGL ES steht, versucht Unity zuerst, Vulkan zu verwenden. Wenn das Gerät Vulkan nicht unterstützt, läuft Unity mit OpenGL ES. Ausführliche Informationen zu Vulkan auf Android findest du unter Erste Schritte mit Vulkan. Dort erfährst du beispielsweise, wie du moderne Grafik-APIs verwendest und die Leistung deines Spiels optimieren kannst.

Projekteinstellungen > Playereinstellungen > Rendering > Graphics APIs
Abbildung 3: Legen Sie Grafik-APIs manuell fest, wenn die Auto Graphics API deaktiviert ist. Vulkan ist die erste Option. Unity verwendet stattdessen OpenGL ES 3.0.

Anrufe zeichnen

Alle auf dem Bildschirm angezeigten Elemente sind mit einem oder mehreren Zeichenaufrufen verknüpft. Auf mobilen Plattformen sollten Sie die Anzahl der Zeichenaufrufe, die Sie an die Grafikprozessor (GPU) senden, optimieren und reduzieren.

Das Zeichnen von Anrufen ähnelt dem Zeichnen von Autos, die an einer Ampel stehen. Wenn das Licht grün wird, kann eine bestimmte Anzahl von Autos durchfahren werden, bevor das Licht wechselt. Wenn das Licht gelb wird, haben Sie Ihre ideale Ziel-Framezeit (21 Millisekunden) erreicht. Wenn das Licht rot wird, haben Sie das Frame Time-Limit von 33 Millisekunden erreicht. Alles, was sich auf den nächsten Rendering-Frame auswirkt, sodass die resultierende Framerate niedriger als die Ziel-Framerate von 30 fps ist

Informationen dazu, wie Sie die Leistung von Zeichenaufrufen in Ihrem Spiel verbessern können, finden Sie im Artikel zur Batchverarbeitung des Unity-Supports.

Schatten

Zeichenaufrufe für das Schattenstreaming können die GPU-intensivste sein und selbst in einfachen Umgebungen die meiste GPU-Zeit in Anspruch nehmen. Um die Kosten für das Schattenwerfen und Zeichnen zu reduzieren, experimentieren Sie mit harten statt weichen Schatten. Wenn dies auf der GPU für Low-End-Geräte immer noch zu teuer ist, sollten Sie Blob-Schatten statt harter Schatten verwenden.

Struktur

Das empfohlene Texturkomprimierungsformat für RGB- und RGBA-Texturen unter Android ist ASTC. In Unity sollten Sie unter Android ETC2 als Option für die minimale Texturkomprimierung verwenden. Sie können auf ETC2 als Sicherung von ASTC unter Unity Build Settings zurückgreifen.

Eine vollständige Liste der unterstützten Formate nach Plattform finden Sie in der Unity-Dokumentation unter Manuell: Empfohlene, standardmäßige und unterstützte Texturformate nach Plattform.

Benutzeroberfläche und Seitenverhältnisse

Mit dem Unity-Tool Gerätesimulator können Sie direkt im Unity-Editor eine Vorschau verschiedener Bildschirmauflösungen, Ausrichtungen und Seitenverhältnisse des Geräts ansehen. Sie können zwischen der Spielansicht und der Ansicht „Gerätesimulator“ wechseln.

Eine Vorschau des Tools finden Sie unter Spiel mit dem Gerätesimulator in Unity simulieren.

Abbildung 4: Gerätesimulator mit Trivial Kart

Den Quellcode von Trivial Kart findest du im Repository games-sample auf GitHub.

Sie können das Layout und die Richtigkeit der UI-Canvas-Elemente in der Gerätesimulator-Ansicht schnell prüfen, indem Sie im Drop-down-Menü Geräteoptionen auswählen:

Projekteinstellungen > Playereinstellungen > Optimierte Frame-Budgetabstufung
Abbildung 5: Der Gerätesimulator unterstützt das Wechseln von Geräten im Editor, sodass du Designprobleme frühzeitig erkennen kannst.
Projekteinstellungen > Spielereinstellungen > Optimiertes Fame-Pacing
Abbildung 6: Klicken Sie das Kästchen Pre-Release Packages aktivieren an, bevor Sie das Device Simulator-Paket herunterladen.

Weitere Techniken zur UI-Optimierung für Unity finden Sie in der folgenden Anleitung von Unity: Optimization Unity UI.

Physik

Die Nvidia PhysX-Engine ist in Unity integriert. Die Standardeinstellungen können auf Mobilgeräten teuer sein. Beachten Sie daher Folgendes:

  • Überlege dir deine Ziel-Framerate und lege den festen Zeitraum entsprechend fest. Die Standardeinstellung ist 0,02 ms oder 50 Hz. Für ein Ziel von 30 fps kannst du es auf 0,03 oder höher erhöhen.
  • Sie können Mesh-Collider vereinfachen und die Ebenenkollisionsmatrix minimieren, um Interaktionen zwischen Spielobjekten bestimmter Ebenentypen zu bestimmen.

Informationen zu Physikeinstellungen und Optimierungen für Spiele für Mobilgeräte finden Sie im E-Book zur Optimierung von Spielen für Mobilgeräte von Unity.

Profil

App-Entwickler übersehen oder ignorieren die Profilerstellung häufig, bis die Anwendung einen kritischen Fehlerpunkt erreicht. Es empfiehlt sich, spezielle Zeit für die Profilerstellung in Ihren Prozess einzuplanen und die folgenden Best Practices anzuwenden:

  • Identifizieren Sie wichtige Punkte während der Entwicklung, an denen Sie Zeit für die Profilerstellung zuweisen können, anstatt sie nach dem Zufallsprinzip einzupassen.
  • Speichern Sie Profil-Snapshots zur Verwendung mit Unity Profile Analyzer.
  • Erstellen Sie ein Profil für Ihr Spiel auf Zielgeräten, um ein genaues Bild von der Leistung Ihres Spiels in der aktuellen Entwicklungsphase zu erhalten.
  • Profile für verschiedene Bereiche deines Spiels erstellen
  • Erstellen Sie ein Profil, wie Ihre Spieler das Spiel spielen. Erstellen Sie kein Profil für Ihr Spiel, wenn es sich im Inaktivitätszustand oder auf einem Pausenbildschirm befindet.
  • Erstellen Sie ein Profil im kontinuierlichen Modus, nachdem das Spiel eine Weile gelaufen ist, um Drosselungsprobleme zu finden, die auftreten können, wenn die Mobilgeräte heiß sind.

Sie können die folgenden Tools zur Profilerstellung separat oder in Kombination verwenden.

  • Unity Profiler: Der Unity Profiler ist ein vollständig integriertes Tool zur Leistungsanalyse, das Ihren Code im Unity-Editor verarbeiten und eine Verbindung zu Ihrem eigenständigen Android-Gerät herstellen kann, auf dem Builds im Entwicklungsmodus ausgeführt werden.

  • Android GPU Inspector: Mit dem Android GPU Inspector (AGI) können Sie Fehler auf Frame-Ebene beheben. Außerdem analysiert AGI die Systemdienste, einschließlich GPU, CPU, Arbeitsspeicher, Akku und GPU-Zähler.

Weitere Informationen zur Profilerstellung für Ihr Spiel in Unity finden Sie im Video Einführung in die Profilerstellung in Unity oder im Ultimate Guide zur Profilerstellung für Unity-Spiele von Unity.

Speicherverwaltung

Android-Prozesse teilen sich den verfügbaren Arbeitsspeicher auf dem Zielgerät. Sie sollten ein Profil für die Arbeitsspeichernutzung erstellen, wenn das Zieltestgerät genügend kostenlose Arbeitsspeicherressourcen hat. Führen Sie Arbeitsspeichertests an einem konsistenten Punkt in Ihrem Spiel durch, damit Sie Sitzungen und Arbeitsspeichernutzungstrends angemessen vergleichen können.

Wenn Sie mit in C# geschriebenen Skripts arbeiten, sollten Sie bei der Verwendung von Strings, Stringvergleichen und Zuweisungen von stringbezogenen Objekten (z. B. JSON-Dateien für Spieleinstellungen) vorsichtig sein. Diese generieren häufige Speicherzuweisungen und können zur Fragmentierung beitragen.

Erwägen Sie die Verwendung der Klasse StringBuilder für umfangreiche Sequenzen von Stringbearbeitungen statt direkter Verkettung von Strings (z. B. „this“ + „is“ + „a“ + „bad“ + „idea“ im Vergleich zu StringBuilder.Concat()-Funktionsaufrufen).

Weitere Informationen zu Strings finden Sie in der Unity-Dokumentation unter Strings und Text.

Evaluieren Sie TextAsset- und JSON-Textressourcen anhand des bevorzugten ScriptableObject-Typs. ScriptableObjects handhabt die szenenübergreifende Datenspeicherung effizient und ermöglicht Änderungen der Editor-to-Play-Zeit.

Im Hutch-Artikel Die versteckte Optimierung in Netzwerkspielen wird erläutert, wie Alternativen zum standardmäßigen JSON-Handle für die Optimierung für Mobilgeräte verwendet werden.

Mit der Memory Advice API können Sie ermitteln, wie die Arbeitsspeichernutzung zur Laufzeit aussieht. Die API zeigt eine Ampelanzeige für hohe, normale und niedrige Arbeitsspeichernutzung. Sie können den Indikator abonnieren, um Updates zu erhalten, oder ihn direkt abfragen, um den aktuellen Status abzurufen. Wenn Sie ein rotes Signal erhalten, sollten Sie gegebenenfalls den Objektpool oder Cache des Spiels reduzieren. Binden Sie diesen Kontext während der Live-Nutzung und bei der Überprüfung der Leistungsmesswerte nach der Einführung in Ihre Spieltelemetrie ein.

Weitere Informationen zur Organisation des Arbeitsspeichers auf Android-Geräten und zur Funktionsweise von Unity finden Sie im Video Understanding Android storage usage (von der Google I/O '18). Im Video werden die verschiedenen Arten von Arbeitsspeicherproblemen erklärt und es wird erklärt, wann der Killer für unzureichenden Arbeitsspeicher wirksam wird.

Automatische Speicherbereinigung

Die automatische Speicherbereinigung in einer Umgebung mit verwaltetem Arbeitsspeicher bereinigt nicht verwendete Speicherfragmente, die für eine Anwendung recycelt werden können. Befolgen Sie die Best Practices für die automatische Speicherbereinigung, um unnötige Zuweisungen von Arbeitsspeicherressourcen zu vermeiden.

Erstellen Sie beispielsweise einen Spielobjektpool, statt On-Demand-Zuweisungen (GameObject.Instantiate). Bei großen Pools empfiehlt es sich, mehrere Frames zuzuweisen, um das Risiko zu verringern, dass Ihr Spiel auf Android-Einstiegsgeräten nicht reagiert.

Betrachten Sie das folgende Code-Snippet für eine einfache Koroutine, die am Anfang eines MonoBehaviour-Vorgangs aufgerufen wird:

// Option 1: Bad for memory management - causes allocation each iteration
IEnumerator UpdateEnemyTarget() {
  while (enabled) {
    yield return new WaitForSeconds(1.0f);
    // Some intermittent function check
  }
}

// Option 2: Better for memory management - allocation of yield instruction once, reused each iteration
private YieldInstruction waitForSecond = new WaitForSeconds(1.0f);
IEnumerator BetterUpdateEnemyTarget() {
  while (enabled) {
    yield return waitForSecond;
    // Some other intermittent function
  }
}

Sie können die MonoBehaviour-Vorlagendatei so bearbeiten, dass die standardmäßigen Stub-Funktionen Start() und Update() entfernt werden, damit Sie während der Entwicklung nicht versehentlich leere Funktionen hinterlassen.

Eine Übersicht über die Reihenfolge der Ausführung von MonoBehaviour-Ereignissen finden Sie unter Reihenfolge der Ausführung von Ereignisfunktionen in der Unity-Dokumentation. Weitere Informationen zur Speicherverwaltung finden Sie im Kurs Speicherverwaltung in Unity.

Tipps zur Leistungsoptimierung für Spiele für Mobilgeräte finden Sie unter Leistung Ihrer Spiele für Mobilgeräte optimieren: Tipps von den Top-Entwicklern von Unity zur Profilerstellung, zum Arbeitsspeicher und zur Codearchitektur.

Fertiges Pooling

CPU-Frame-Time-Spitzen werden fast vollständig durch die Prefab-Instanziierung während des Spiels verursacht. Erwägen Sie, Objektpools für Projektile, spawnable Feinde und visuelle Effekte vor dem Spiel vorzuwärmen, um die CPU-Spitzen beim Starten zu reduzieren oder zu beseitigen. Sie können beim Laden oder bei Einführungssequenzen in Ihrer Szene zusätzliche Optimierungen auf mehrere „Initialisierungs-Frames“ verteilen.

Im Unity Asset Store findest du viele Pooling-Assets von Drittanbietern, die sich auf die Verwaltung von Spieleobjekt-Pooling beziehen. Du kannst aber auch eigene Interaktionen erstellen. Weitere Informationen finden Sie unter Einführung in Objekt-Pooling in Unity Learn.

Asset-Lieferung

Es gibt Limits für die Größe Ihrer App bei der ersten Bereitstellung bei Google Play. Je nach Größe und Art Ihres Spiels benötigen Sie möglicherweise einige oder alle Spielressourcen (Charaktermodelle, Umgebungen, UI-Elemente usw.), damit die Spieler das gewünschte Erlebnis haben.

Mit dem Dienst Play Asset Delivery (PAD) können Sie Assets verwalten, die Ihr Spiel bei der Installation, bei Rapid Follow oder on demand benötigt. Unity Asset Bundles sind integriert, um PAD zu unterstützen, und Sie können mit dem Tool angeben, welche Elemente geliefert werden.

Adressierbar

Das Einrichten dynamischer Ressourcen wie Einstellungen, Texturen und Audiodateien während der Laufzeit ist kein komplexer Vorgang mehr, wenn Sie das Benennungssystem für die Addressables vorbereiten und prüfen. Mit adressierbaren Assets entkoppeln Sie die Anordnung Ihrer Inhalte und die Art und Weise, wie Sie Ihre Inhalte erstellen und laden. Das Addressables-System ersetzt Ressourcenordner und Asset-Bundles, um das Verweisen auf Assets und das Laden zur Laufzeit zu vereinfachen.

Ein Beispiel finden Sie auf GitHub im Demoprojekt mit dem Addressables-Paket. Details zur Entwicklung von Addressables finden Sie unter Addressable Asset System im Unity-Blog.

Beim Layout eines adressierbaren Assets gibt es Vor- und Nachteile, wenn zu wenige oder zu viele Assets zu gemeinsamen Bundles zusammengefasst werden. Weitere Informationen zum Content-Management mit Addressables finden Sie unter Content-Management mit Addressables vereinfachen.

Sie können eine eigenständige Demo einrichten und mit den Zugriffsmodi experimentieren, um sich mit dem Addressables-System vertraut zu machen. Sie können sich auch das Open-Source-Projekt BuildLayout Explorer für Unity 2019.3 und höher und den von Addressables generierten buildlayout.txt-Bericht ansehen.

Die Assets für Chop Chop, ein Unity Open Project, wurden mit dem Addressables-System für das gesamte Be- und Entladen verpackt. Eine Anleitung zur Struktur und Einrichtung der Konfiguration der Addressable-Bundles finden Sie unter Inhalte mit adressierbaren Assets verpacken | Devlog zu offenen Projekten.

Im Chop Chop-Projekt wurde als einzige standardmäßig geladene Szene die Initialisierungsszene so konfiguriert, dass AssetReferences anstelle von direkten Links zu Assets im Projekt (Szenen, Einstellungen usw.) verwendet wird.

Der Quellcode für das Unity Open Project: Chop Chop ist bei GitHub verfügbar. Obwohl sich das Projekt nicht mehr in der Entwicklung befindet, sind das Git-Repository und die Dokumentation weiterhin verfügbar.

Plug-ins von Drittanbietern

Wenn Sie Plug-ins von Drittanbietern verwenden, z. B. im Unity Asset Store, müssen Sie die Ordner überprüfen und unnötige Assets aus den Ressourcen-Ordnern entfernen. Während des Build-Prozesses erfasst Unity alle Assets in Ressourcenordnern und verpackt sie in einem einzelnen Bundle, auf das während der Laufzeit zugegriffen werden kann. Das kann das Endprodukt aufgebläht und ist oft nicht erforderlich.

Wenn Sie schnell alle Ressourcenordner finden möchten, suchen Sie im Bereich Projekt nach Ressourcen. Sie können dann jedes Element auswählen, um zu ermitteln, was darin enthalten ist und ob es für Ihr Spiel erforderlich ist.

Abbildung 7: In den aus dem Unity Asset Store heruntergeladenen Ordnern befinden sich möglicherweise mehrere Ordner mit dem Namen Resources. Bereinigen Sie diese Elemente, um zu vermeiden, dass sie in Ihr App-Bundle verpackt werden.

Veröffentlichen und verwalten

Wenn Sie bereit sind, Ihr Spiel für Mobilgeräte auf den Markt zu bringen, müssen Sie entscheiden, für wen Sie es veröffentlichen möchten, wie Sie Alpha- und Betatests durchführen und wie Sie die Leistung nach der Veröffentlichung überwachen und verfolgen.

Feedback zu einem eingeschränkten Release analysieren

Du kannst die App für eine begrenzte Zielgruppe einführen und größere Betatests durchführen oder dein Spiel aktivieren, damit es in allen Märkten verfügbar ist. Mit einem eingeschränkten Release können Sie die Anwendungsleistung basierend auf einer größeren Live-Zielgruppe und Sammlung von Geräten optimieren.

Sie können beispielsweise den Android Performance Tuner für Unity und Google Analytics für Unity verwenden, um Informationen über die App-Leistung und Trends von Spielern zu erhalten, die Ihr Entwicklungsteam dann optimieren und Updates veröffentlichen kann. Sie können Ihre Analysedaten auch verwenden, um Fortsetzungen oder ähnliche Spiele in einem ähnlichen Genre zu planen.

Alpha- und Betatest

Nachdem Sie Ihr Anwendungsprofil in der Google Play Console eingerichtet haben, können Sie öffentliche Alpha- und Betatest-Builds vorbereiten und sie vor der Veröffentlichung an eine begrenzte Zielgruppe verteilen. Wenn Sie die App für eine begrenzte Zielgruppe einführen, können Sie letzte Probleme mit einem größeren Gerätepool beheben und erstes Feedback einholen, auf das Sie reagieren können, bevor Sie einen globalen Release veröffentlichen.

Deine Unity-Builds werden über Android App Bundles vertrieben. Weitere Informationen finden Sie im Artikel Manuell an Google Play bereitstellen von Unity, in dem auch die Änderungen von APK-Dateien zum AAB-Format beschrieben werden.

Überwachen und verfolgen

Während der LiveOps- und Vertriebsphase deines Spiels kannst du Android Vitas verwenden, um Leistungsprobleme auf Geräten aufzuspüren, auf die du während der Entwicklung und Tests möglicherweise keinen Zugriff hattest. Weitere Informationen findest du im Video Neuerungen für Spiele in „Reichweite und Geräte“ sowie in Android Vitals.

Häufig haben größere Entwicklungsteams einzigartige und benutzerdefinierte Pipelines für Spieltelemetrie, die Messwerte zur Geräteleistung bereitstellen. Nutzen Sie den Android Performance Tuner (APT) und das entsprechende Unity-Plug-in für Einwahlmesswerte zu Framerates, Grafikqualität, Ladezeiten und abgebrochenen Ladevorgängen. Folgen Sie der detaillierten Anleitung unter Android Performance Tuner in Ihr Unity-Spiel integrieren.

Der Lebenszyklus deines Spiels endet nicht nach der Veröffentlichung. Die Überwachung, Wartung und Reaktion auf Leistung und Feedback sind entscheidend für zufriedene Nutzer, positive Rezensionen und die letztendliche Akzeptanz deines Spiels in allen Märkten.