Spiel-Engines anpassen oder portieren

Tools, Sterne, Planet Wenn Sie C oder C++ verwenden, um eine Spiel-Engine zu entwickeln oder anzupassen, sind die folgenden Anforderungen für die Integration des Android-Supports in Ihre Spiel-Engine entscheidend.

  • Android-Entwicklertools nutzen
  • Aktivität erstellen
  • Auf Bildschirm zeichnen
  • Eingabeereignisse verarbeiten
  • Audioausgabe
  • Gemerkte Informationen verwalten
  • Testen und optimieren
  • Bei Google Play veröffentlichen

Die auf dieser Seite beschriebenen Anforderungen erklären nicht, wie Sie eine Spiele-Engine von Grund auf entwickeln können. Vielmehr lernen Sie die Bereiche kennen, in denen Android im Vergleich zu anderen Plattformen relativ einzigartig ist.

Android-Entwicklertools nutzen

Android Studio enthält Tools, mit denen Sie Folgendes tun können:

  • Projekt konfigurieren
  • Spiel erstellen, debuggen und verpacken
  • Leistung deines Spiels mit System-, CPU- und Speicherprofilern untersuchen
  • Inhalt des Spielpakets oder Anwendungspakets prüfen
  • Integration zusätzlicher Funktionen des Android SDK und des NDK

Mit dem Android Graphics Inspector können Sie die Rendering-Leistung Ihres Spiels charakterisieren und mithilfe von Frame-Profilen die Details gerenderter Frames untersuchen.

Wenn Sie hauptsächlich Microsoft Visual Studio verwenden, können Sie mit der Android Game Development Extension (AGDE) vorhandenen Projekten ein Android-Ziel hinzufügen. AGDE unterstützt das native Debugging in Visual Studio und enthält eigenständige Versionen vieler Android Studio-Tools zur Profilerstellung.

Aktivität erstellen

Ihr Spiel muss eine Activity erstellen und damit interagieren. Informieren Sie sich über den Aktivitätslebenszyklus unter Android, um zu verstehen, wann eine Aktivität erstellt, gestartet, fortgesetzt, pausiert, beendet und gelöscht wird.

Informieren Sie sich über die GameActivity-Bibliothek, die die Activity-bezogenen Anforderungen (Spielfenster, Lebenszyklus, Rendering, Verarbeitung von Ereignissen) nativer C- oder C++-Spiel-Engines integriert und erfüllt.

Auf Bildschirm zeichnen

Ihr Spiel muss Objekte und Sprites auf dem Bildschirm zeichnen. Hier findest du Informationen zur Android-SurfaceView und zur Konfiguration von Grafiken in deiner Spiel-Engine.

Android-Geräte unterstützen unterschiedliche Display-Aktualisierungsraten. Informieren Sie sich über das Rendering in Spielschleifen, um Frame-Drops und Frame-Pufferfehler zu vermeiden.

Hier erfährst du, wie du Frame-Taktung für ein reibungsloses Rendering in OpenGL und Vulkan erzielen kannst. Optimiere deine Framerate mit dem Performance Tuner.

Verwenden Sie das Multisample-Anti-Aliasing (MSAA), um die Renderingqualität zu verbessern. MSAA kann mit sehr geringem Aufwand verwendet werden. Weitere Informationen finden Sie im Blogpost Multisampled Anti-Aliasing For Almost Free – On Tile-Based Rendering Hardware.

Eingabeereignisse verarbeiten

Eine Spiel-Engine empfängt Eingabeereignisse aus einer Vielzahl von Quellen. Für ein anspruchsvolles Spielerlebnis sollten Sie sich mit der Unterstützung verschiedener Android-Eingabequellen vertraut machen:

Audioausgabe

Ihre Spiel-Engine muss Audio über verschiedene Geräte und Android-Versionen ausgeben. Erfahren Sie mehr über Oboe, unsere Open-Source-C++ Audio-Bibliothek zur Einbindung von Hochleistungs-Audio in Ihr Spiel.

Verwenden Sie Oboe, um die niedrigste Latenz zu erzielen, bestimmte Audiofehler zu vermeiden und automatisch die beste verfügbare native Bibliothek wie AAudio oder OpenSL ES auszuwählen.

Gemerkte Informationen verwalten

Auf Android-Geräten versucht das System, so viel Systemspeicher (RAM) wie möglich zu verwenden, und führt verschiedene Arbeitsspeicheroptimierungen durch, um bei Bedarf Speicherplatz freizugeben. Informationen zum Verwalten der Arbeitsspeichernutzung, damit das Spiel nicht langsamer wird oder beendet wird

Testen und optimieren

Eine Android-App stürzt immer dann ab, wenn ein unerwarteter Exit aufgrund einer unbehandelten Ausnahme oder eines unbehandelten Signals erfolgt. Informationen zum Erkennen und Diagnostizieren von Abstürzen, zum Lesen von Stacktraces, Arbeitsspeicher- und Netzwerkausnahmen, zur Verwendung von Logcat und zum Verständnis von Java- und Kotlin-spezifischen Fehlern

Bei Google Play veröffentlichen

Spieler laden Ihr Spiel mit verschiedenen Android-Geräten in verschiedenen Ländern, Netzwerkbedingungen und Datentarifen herunter. Hier erfahren Sie, wie Sie mit Google Play App Bundles und Asset-Packs für große Spiele mit den Vorteilen eines Content Delivery Network bereitstellen.