Spiel-Engines anpassen oder portieren

Werkzeuge, Sterne, Planet Wenn Sie eine Spiele-Engine mit C oder C++ entwickeln oder anpassen, sind die folgenden Anforderungen für die Integration der Android-Unterstützung in Ihre Spiel-Engine entscheidend.

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

Die auf dieser Seite beschriebenen Anforderungen vermitteln Ihnen nicht, wie Sie eine Spiel-Engine von Grund auf entwickeln, sondern Sie identifizieren die Bereiche, in denen Android im Vergleich zu anderen Plattformen relativ einzigartig ist.

Android-Entwicklertools nutzen

Android Studio enthält Tools, mit denen du Folgendes tun kannst:

  • Projekt konfigurieren
  • Spiel erstellen, debuggen und verpacken
  • Leistung deines Spiels mit System-, CPU- und Speicher-Profilern analysieren
  • Inhalt des Spielpakets oder App-Bundles prüfen
  • Integration zusätzlicher Funktionen von Android SDK und NDK

Der Android Graphics Inspector kann die Rendering-Leistung Ihres Spiels charakterisieren und Ihnen helfen, die Details gerenderter Frames mithilfe von Frame-Profiling zu untersuchen.

Wenn Sie hauptsächlich Microsoft Visual Studio verwenden, können Sie die Android Game Development Extension (AGDE) verwenden, um vorhandenen Projekten ein Android-Ziel hinzuzufügen. AGDE unterstützt natives Debugging in Visual Studio und enthält eigenständige Versionen vieler Profilerstellungstools von Android Studio.

Aktivität erstellen

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

Weitere Informationen zur GameActivity-Bibliothek, die die Activity-bezogenen Anforderungen (Spielfenster, Lebenszyklus, Rendering, Verarbeitung von Ereignissen) von nativen C- oder C++-Spiel-Engines berücksichtigt und erfüllt.

Auf den Bildschirm zeichnen

Ihr Spiel muss Objekte und Sprites auf dem Bildschirm zeichnen. Informiere dich über das Android-SurfaceView und darüber, wie du in der Spiel-Engine Grafiken konfigurieren kannst.

Android-Geräte unterstützen unterschiedliche Aktualisierungsraten für das Display. Weitere Informationen zum Rendering in Spielschleifen, um Frame-Drops und Bildpufferstörungen zu vermeiden

Weitere Informationen zum Erzielen einer Frame-Taktung für ein reibungsloses Rendering in OpenGL und Vulkan Optimieren Sie die Framerate mit dem Performance Tuner.

Eingabeereignisse verarbeiten

Eine Spiel-Engine erhält Eingabeereignisse aus einer Vielzahl von Quellen. Für ein atemberaubendes Spielerlebnis sollten Sie sich damit vertraut machen, verschiedene Android-Eingabequellen zu unterstützen:

Audioausgabe

Deine Spiel-Engine muss Audio auf verschiedenen Geräten und Android-Versionen ausgeben. Hier erfahren Sie mehr über Oboe, unsere Open-Source-C++-Audiobibliothek zur Einbindung von leistungsstarkem Audio in Ihr Spiel.

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

Erinnerung verwalten

Auf Android-Geräten versucht das System, so viel Systemspeicher (RAM) wie möglich zu verwenden, und führt verschiedene Speicheroptimierungen durch, um bei Bedarf Speicherplatz freizugeben. Informieren Sie sich, wie Sie die Arbeitsspeichernutzung verwalten, damit Sie Ihr Spiel nicht verlangsamen oder beenden.

Testen und optimieren

Eine Android-App stürzt immer dann ab, wenn durch eine unbehandelte Ausnahme oder ein unbehandeltes Signal ein unerwartetes Beenden auftritt. Hier erfahren Sie, wie Sie Abstürze erkennen und diagnostizieren, Stacktraces, Arbeitsspeicher- und Netzwerkausnahmen lesen, Logcat verwenden und Java- und Kotlin-spezifische Fehler verstehen.

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 bereitstellen und die Vorteile eines Content Delivery Network nutzen.