Auf dem heutigen hart umkämpften Gaming-Markt ist es wichtiger denn je, eine möglichst große Zielgruppe zu erreichen. Durch die Entwicklung von Spielen für verschiedene Formfaktoren wie Smartphones, Tablets, faltbare Geräte und Computer können Sie eine größere Gruppe potenzieller Spieler erschließen und Ihre Erfolgschancen erhöhen.
Anpassung der Bildschirmgröße unterstützen
Zur Unterstützung verschiedener Formfaktoren muss die Größe des Spiels angepasst werden können. Durch die Anpassung der Größe kann dein Spiel Gerätekonfigurationen wie Hochformat und Querformat, Mehrfenstermodus sowie zugeklappt und aufgeklappt von faltbaren Geräten unterstützen.
Wenn Ihr Spiel nicht alle Konfigurationen für Fenstergröße und -ausrichtung unterstützt, wird Ihr Spiel von den Letterbox-Balken auf der Plattform im Kompatibilitätsmodus dargestellt. Bei Bedarf wird der Spieler darüber informiert, bevor zu einer nicht unterstützten Konfiguration gewechselt wird.
Weitere Informationen findest du unter Größe von großen Bildschirmen anpassen.
Mehrfenstermodus
Mit dem Mehrfenstermodus können mehrere Apps denselben Bildschirm gleichzeitig teilen. Apps können nebeneinander oder übereinander angezeigt werden (Split-Screen-Modus), eine App in einem kleinen Fenster, die andere Apps überlagert (Bild-im-Bild-Modus), oder einzelne Apps in separaten verschiebbaren Fenstern mit anpassbarer Größe (Freiformat-Modus).
Damit Sie nicht in den Kompatibilitätsmodus wechseln, wenn Ihr Spiel im Mehrfenstermodus ausgeführt wird, müssen Sie deklarieren, dass Ihr Spiel die Größe anpassen kann. Aktivieren Sie dazu in den Unity-Build-Einstellungen die Option Fenster mit anpassbarer Größe.
Display-Aussparungen
Auf einigen Geräten ist eine Display-Aussparung ein Bereich, der in die Displayoberfläche hinausreicht. Aussparungen ermöglichen ein randvolles Erlebnis und bieten gleichzeitig Platz für wichtige Sensoren an der Vorderseite des Geräts.
Konfigurieren Sie das Spiel so, dass es sich auf sichere Frames bezieht. Fragen Sie die Unity safeArea API ab, um den sicheren Bereich des Bildschirms in Pixeln zu ermitteln, und passen Sie die Benutzeroberfläche und die UX des Spiels entsprechend an, insbesondere für die Elemente, mit denen Nutzer interagieren können.
Faltbare Haltungen
Faltbare Geräte können sich im zugeklappten Zustand befinden, z. B. FLAT
(vollständig geöffnet) oder HALF_OPENED
(irgendwo zwischen vollständig geöffnet und vollständig geschlossen). Wenn sich ein Gerät im Status HALF_OPENED
befindet, sind je nach Ausrichtung der Faltung zwei Haltungen möglich: die Haltung „Auf dem Tisch“ (horizontale Faltung) und die Buchhaltung (vertikal).
Die Haltung „Auf dem Tisch“ sorgt dafür, dass sich die Spieler besser in das Spiel einfühlen und interagieren können.
Wenn Sie die Position „Auf dem Tisch“ implementieren möchten, erweitern Sie die standardmäßige Unity-Aktivität und verwenden Sie dann die Layoutbibliothek Jetpack WindowManager, um das Aufklappen Ihres Spiels zu erkennen.
Unity-Beispielprojekt
Das Unity-Beispielprojekt basiert auf dem Unity-2D-Demoprojekt Lost Crypt. Im Beispielprojekt wird gezeigt, wie die Größe eines großen Bildschirms in Unity geändert werden kann. Um große Bildschirme und faltbare Geräte zu unterstützen, sind eine Reihe von Änderungen an den Unity-Build-Optionen sowie Überlegungen am Layout der Kamera und der UI-Canvases erforderlich.
Das Beispielprojekt kann jetzt heruntergeladen werden. Das Projekt enthält vier verschiedene Szenen:
- Original: Unterstützung für einfache Funktion mit anpassbarer Größe
- Verankerung:Entspricht der Originalszene, passt sich jedoch an verschiedene Seitenverhältnisse an und vermeidet die Display-Aussparung.
- HingeAware:Wie „Verankerung“, aber unterstützt die Positionierung „Auf dem Tisch“
- Hauptmenü: „Szene wird gestartet“, ermöglicht die Navigation zu den anderen Szenen und unterstützt alle Geräteausrichtungen sowie das Auf- und Zuklappen sowie die Haltung „Auf dem Tisch“
Wählen Sie beim Erstellen für Android alle Szenen aus und legen Sie die Hauptmenüszene als Startszene fest.
Mit Unterstützung für anpassbare Fenster beginnen
Implementieren Sie die Unterstützung für verschiedene Bildschirmgrößen und Seitenverhältnissen in Ihrer Android-App für große Bildschirme, damit Ihr Spiel oder Ihre App auf verschiedenen Geräten richtig angezeigt wird. Wenn Sie die Größe und das Seitenverhältnis Ihres Spiels ändern möchten, legen Sie in den Build-Einstellungen von Unity die Eigenschaft Fenster mit anpassbarer Größe fest (siehe Abschnitt Mehrfenstermodus). Passen Sie das Seitenverhältnis der Kamera und des Canvas an, damit sie besser auf verschiedene Bildschirme passen. Sehen Sie sich die Projekteinstellungen in den Build-Einstellungen und in der Datei Plugins/Android/AndroidManifest.xml
an. Erleben Sie die Vollbild-Funktion
in der „Original“-Szene des Projekts.
Beeindruckende Vollbilddarstellung mit Display-Aussparungen
Aktivieren Sie Ihr Spiel, um den gesamten Bildschirm zu nutzen, um das Gameplay immersiver zu gestalten. Aktualisieren Sie die Anker- und Kameraeinstellungen der Spiele-UI so, dass sie automatisch an die Bildschirmgröße angepasst werden. So können UI-Elemente ihre Positionen relativ zur Bildschirmgröße beibehalten.
Die Ankerszene verwendet das Skript CameraAspectLock
, um auf Änderungen der Gerätekonfiguration über eine erweiterte Aktivität zu reagieren (siehe Assets/Plugins/Android/LargeScreenPlayableActivity.java
). Die safeArea API von Unity wird im SafeZoneAPI
-Skript demonstriert, das eine Bindung an das SafeZone
-Objekt innerhalb der Ankerszene herstellt.
Für faltbare Geräte optimieren
Die letzte Szene des Unity-Beispielprojekts, „HingeAware“, enthält ein ConfigurationManager
-Objekt, das über Jetpack Library APIs und eine erweiterte Aktivität (siehe Assets/Plugins/Android/LargeScreenPlayableActivity.java
) auf die verschiedenen Faltzustände des Zielgeräts reagiert (siehe Assets/Plugins/Android/LargeScreenPlayableActivity.java
). In der Szene wird mithilfe des Skripts PanelOnFold
die Benutzeroberfläche basierend auf dem Faltstatus des Geräts gesteuert. So wird z. B. der untere Steuerbereich angezeigt, wenn das Gerät auf dem Tisch liegt und angepasst wird.