Kurzanleitung für Google Cardboard für Unity

In diesem Leitfaden erfährst du, wie du mit dem Google Cardboard XR-Plug-in für Unity für Unity deine eigenen Virtual-Reality-Erlebnisse (VR) erstellen kannst.

Mit dem Cardboard SDK kannst du ein Smartphone in eine VR-Plattform verwandeln. Ein Smartphone kann 3D-Szenen mit stereoskopischem Rendering anzeigen, Kopfbewegungen verfolgen und darauf reagieren und mit Apps interagieren, indem es erkennt, wenn der Nutzer auf die Schaltfläche des Betrachters drückt.

Verwende zum Einstieg HelloCardboard, ein Demospiel, das die Hauptfunktionen des Cardboard SDK demonstriert. Die Nutzer schauen sich in der virtuellen Welt um, um Objekte zu finden und zu sammeln. Sie erfahren, wie Sie:

  • Entwicklungsumgebung einrichten
  • Demo-App herunterladen und erstellen
  • QR-Code einer Cardboard-Brille scannen, um deren Parameter zu speichern
  • Die Kopfbewegungen der Nutzenden erfassen
  • Stereoskopische Bilder rendern, indem die korrekte Verzerrung für jedes Auge festgelegt wird
  • VR-Modus aktivieren und deaktivieren

Entwicklungsumgebung einrichten

Softwareanforderungen:

SDK importieren und ein neues Projekt erstellen

Führen Sie die folgenden Schritte aus, um das Unity SDK zu importieren und ein neues Projekt zu erstellen.

  1. Öffnen Sie Unity und erstellen Sie ein neues 3D-Projekt.
  2. Gehen Sie in Unity zu Window > Paketmanager.
  3. Klicken Sie auf + und wählen Sie Add package from git URL (Paket von Git-URL hinzufügen) aus.
  4. Fügen Sie https://github.com/googlevr/cardboard-xr-plugin.git in das Texteingabefeld ein.
    Das Paket sollte den installierten Paketen hinzugefügt werden.
  5. Rufe das Paket Google Cardboard XR Plugin for Unity auf. Wählen Sie im Abschnitt Beispiele die Option In Projekt importieren aus.
    Die Beispiel-Assets sollten in Assets/Samples/Google Cardboard/<version>/Hello Cardboard geladen werden.

HelloCardboard-Szene wird konfiguriert

  1. Gehen Sie zu Assets/Samples/Google Cardboard/<version>/Hello Cardboard/Scenes, wählen Sie Add Open Scenes (Offene Szenen hinzufügen) und dann HelloCardboard aus, um die Beispielszene zu öffnen.
  2. Öffnen Sie das Menü Ebenen und wählen Sie Ebenen bearbeiten... aus.
  3. Definieren Sie eine neue Ebene namens „Interaktiv“.
  4. Klicken Sie auf das GameObject Treasure, um das Fenster „Inspector“ zu öffnen. Legen Sie die Ebene auf „Interaktiv“ fest. Wenn ein Pop-up-Fenster angezeigt wird, in dem Sie gefragt werden, ob Sie die Ebene auch für alle untergeordneten Objekte auf „Interaktiv“ setzen möchten, klicken Sie auf „Ja, untergeordnete Objekte ändern“.
  5. Klicken Sie auf Player > Kamera > CardboardReticlePointer, um das Fenster „Inspector“ zu öffnen. Wählen Sie im Skript "Carboard Reticle Pointer" die Option "Interactive" als Reticle Interaction Layer Mask aus.

Android-Projekteinstellungen konfigurieren

Gehen Sie zu File > Build Settings (Datei > Build-Einstellungen).

  1. Wählen Sie Android und dann Plattform wechseln aus.
  2. Wähle Add Open Scenes (Offene Szenen hinzufügen) und dann HelloCardboard aus.

Player-Einstellungen

Auflösung und Präsentation

Gehen Sie zu Projekteinstellungen > Player > Auflösung und Präsentation.

  1. Legen Sie für Standardausrichtung Querformat links oder Querformat rechts fest.
  2. Deaktivieren Sie die Option Optimierte Frame-Budgetabstufung.

Weitere Einstellungen

Gehen Sie zu Projekteinstellungen > Player > Weitere Einstellungen.

  1. Wählen Sie OpenGLES2, OpenGLES3 oder Vulkan oder eine beliebige Kombination davon in Graphics APIs aus.
  2. Wählen Sie unter Mindest-API-Level Android 8.0 'Oreo' (API level 26) oder höher aus.
  3. Wählen Sie unter Ziel-API-Level mindestens API level 33 aus.
  4. Wählen Sie unter Scripting-Back-End die Option IL2CPP aus.
  5. Wählen Sie die gewünschten Architekturen aus. Wählen Sie dazu unter Zielarchitekturen ARMv7, ARM64 oder beides aus.
  6. Wählen Sie unter Internet Access (Internetzugriff) die Option Require aus.
  7. Geben Sie unter Paketname die Domain Ihres Unternehmens an.
  8. Wenn Vulkan als Graphics API ausgewählt wurde:
    • Entfernen Sie in den Vulkan-Einstellungen das Häkchen bei Displayrotation während des Renderings anwenden.
    • Wenn die Unity-Version 2021.2 oder höher ist, wählen Sie ETC2 im Texturkomprimierungsformat aus.
  9. Wenn die Unity-Version 2023.1 oder höher ist, wählen Sie Activity aus und löschen Sie GameActivity unter Anwendungseinstiegspunkt.

Veröffentlichungseinstellungen

Gehen Sie zu Projekteinstellungen > Player > Veröffentlichungseinstellungen.

  1. Wählen Sie im Bereich Build Custom Main Gradle Template und Custom Gradle Properties Template aus.
  2. Fügen Sie dem Abschnitt „Abhängigkeiten“ von Assets/Plugins/Android/mainTemplate.gradle die folgenden Zeilen hinzu:

      implementation 'androidx.appcompat:appcompat:1.4.2'
      implementation 'com.google.android.gms:play-services-vision:20.1.3'
      implementation 'com.google.android.material:material:1.6.1'
      implementation 'com.google.protobuf:protobuf-javalite:3.19.4'
    
  3. Fügen Sie Assets/Plugins/Android/gradleTemplate.properties die folgenden Zeilen hinzu:

      android.enableJetifier=true
      android.useAndroidX=true
    

Einstellungen für die XR-Plug-in-Verwaltung

Gehen Sie zu Project Settings > XR Plug-in Management (Projekteinstellungen > XR-Plug-in-Verwaltung).

  1. Wählen Sie unter Plug-in-Anbieter die Option Cardboard XR Plugin aus.

Projekt erstellen

Gehen Sie zu File > Build Settings (Datei > Build-Einstellungen).

  1. Wählen Sie Build aus oder wählen Sie ein Gerät und dann Build and Run aus.

iOS-Projekteinstellungen konfigurieren

Gehen Sie zu File > Build Settings (Datei > Build-Einstellungen).

  1. Wählen Sie iOS und dann Plattform wechseln aus.
  2. Wähle Add Open Scenes (Offene Szenen hinzufügen) und dann HelloCardboard aus.

Player-Einstellungen

Auflösung und Präsentation

Gehen Sie zu Projekteinstellungen > Player > Auflösung und Präsentation.

  1. Legen Sie für Standardausrichtung Querformat links oder Querformat rechts fest.

Weitere Einstellungen

Gehen Sie zu Projekteinstellungen > Player > Weitere Einstellungen.

  1. Geben Sie unter Camera Usage Description (Beschreibung der Kameranutzung) Cardboard SDK requires camera permission to read the QR code (required to get the encoded device parameters). ein.
  2. Geben Sie unter iOS-Mindestversion den Wert 12.0 ein.
  3. Geben Sie unter Paketname die Domain Ihres Unternehmens an.

Einstellungen für die XR-Plug-in-Verwaltung

Gehen Sie zu Project Settings > XR Plug-in Management (Projekteinstellungen > XR-Plug-in-Verwaltung).

  1. Wählen Sie unter Plug-in-Anbieter die Option Cardboard XR Plugin aus.

Projekt erstellen

Gehen Sie zu File > Build Settings (Datei > Build-Einstellungen).

  1. Wählen Sie Build oder Build and Run aus.

Neuzentrieren

Mit dem Cardboard SDK kannst du den Head-Tracker mithilfe von Recenter() neu zentrieren.

Führen Sie die folgenden Schritte aus, um es mit der Beispielanwendung auszuprobieren:

  1. Bewegen Sie das Gerät an die Position, die Sie neu zentrieren möchten (als neue nach vorn schauende Kopfposition verwenden).
  2. Halte den Trigger deines Cardboard-Geräts mindestens drei Sekunden lang aktiv.
  3. Lassen Sie den Trigger los.
  4. Die Ausgangsposition zeigt jetzt die Richtung, in die die Kamera zeigt.

Ein- und Ausschalten des VR-Modus

Mit der Unity XR Plugin Management API kannst du den VR-Modus für das Google Cardboard XR-Plug-in für Unity aktivieren oder deaktivieren. Eine Endnutzerdokumentation und Anwendungsbeispiele finden Sie in der Endnutzerdokumentation von Unity.

Die VrMode-Szene im HelloCardboard-Beispiel zeigt eine grundlegende Verwendung der oben genannten API. In dieser Szene kann der VR-Modus durch Tippen auf Beenden deaktiviert und durch Tippen auf eine beliebige Stelle auf dem Bildschirm wieder aktiviert werden. Einzelheiten zur Ausführung finden Sie unter VrModeController.cs.

Nächste Schritte