Guida rapida di Google Cardboard per Unity

Questa guida mostra come utilizzare il plug-in Google Cardboard XR per Unity per creare le tue esperienze di realtà virtuale (VR).

Puoi utilizzare l'SDK Cardboard per trasformare uno smartphone in una piattaforma VR. Uno smartphone può visualizzare scene 3D con rendering stereoscopico, rilevare e reagire ai movimenti della testa e interagire con le app rilevando quando l'utente preme il pulsante del visualizzatore.

Per iniziare, utilizzerai HelloCardboard, un gioco demo che mostra le funzionalità di base dell'SDK Cardboard. Nel gioco, gli utenti esplorano un mondo virtuale per trovare e raccogliere oggetti. Illustra come:

  • Configurazione dell'ambiente di sviluppo
  • Scarica e crea l'app di demo
  • Scansiona il codice QR di un visore Cardboard per salvare i relativi parametri
  • Monitorare i movimenti della testa dell'utente
  • Esegui il rendering di immagini stereoscopiche impostando la distorsione corretta per ciascun occhio
  • Attivare e disattivare la modalità VR

Configurazione dell'ambiente di sviluppo

Requisiti software:

  • Unity 2021.3.44f1 o versioni successive
    • Assicurati di includere il supporto per la compilazione di Android e iOS durante l'installazione.
    • Assicurati di installare la versione della patch 44f1 o successiva.
  • Git deve essere installato e l'eseguibile git deve essere presente nella variabile di ambiente PATH. Per ulteriori dettagli, consulta la documentazione relativa al supporto di git per il gestore dei pacchetti di Unity.

Importa l'SDK e crea un nuovo progetto

Segui questi passaggi per importare l'SDK Unity e creare un nuovo progetto.

  1. Apri Unity e crea un nuovo progetto 3D.
  2. In Unity, vai a Finestra > Gestore pacchetti.
  3. Fai clic su + e seleziona Aggiungi pacchetto dall'URL di Git.
  4. Incolla https://github.com/googlevr/cardboard-xr-plugin.git nel campo di immissione del testo.
    Il pacchetto deve essere aggiunto ai pacchetti installati.
  5. Vai al pacchetto Google Cardboard XR Plugin for Unity. Nella sezione Samples (Samples), scegli Importa nel progetto.
    Le risorse di esempio devono essere caricate in Assets/Samples/Google Cardboard/<version>/Hello Cardboard.

Configurazione della scena HelloCardboard

  1. Vai a Assets/Samples/Google Cardboard/<version>/Hello Cardboard/Scenes, seleziona Aggiungi scene aperte e scegli HelloCardboard per aprire la scena di esempio.
  2. Apri il menu Livelli e seleziona Modifica livelli.
  3. Definisci un nuovo livello denominato "Interattivo".
  4. Fai clic sull'oggetto di gioco Tesoro per aprire la finestra dell'inspector. Imposta il livello su "Interattivo". Se viene visualizzata una finestra popup che ti chiede se vuoi impostare il livello su Interattivo anche per tutti gli oggetti secondari, fai clic su "Sì, modifica gli oggetti secondari".
  5. Fai clic sull'oggetto Player > Camera > CardboardReticlePointer per aprire la finestra dell'inspector. Nello script "Carboard reticle pointer", seleziona "Interattivo" come Reticle Interaction Layer Mask.

Configurazione delle impostazioni del progetto Android

Vai a File > Impostazioni di compilazione.

  1. Seleziona Android e scegli Cambia piattaforma.
  2. Seleziona Aggiungi scene aperte e scegli HelloCardboard.

Impostazioni del player

Risoluzione e presentazione

Vai a Impostazioni progetto > Player > Risoluzione e presentazione.

  1. Imposta Orientamento predefinito su Orizzontale a sinistra o Orizzontale a destra.
  2. Disattiva Tempo di frame ottimizzato.

Altre impostazioni

Vai a Impostazioni progetto > Player > Altre impostazioni.

  1. Scegli OpenGLES2, OpenGLES3 o Vulkan o qualsiasi combinazione di queste opzioni nelle API di grafica.
  2. Seleziona Android 8.0 'Oreo' (API level 26) o versioni successive in Livello API minimo.
  3. Seleziona API level 33 o una versione successiva in Livello API target.
  4. Seleziona IL2CPP in Backend di scripting.
  5. Seleziona le architetture che ti interessano scegliendo ARMv7, ARM64 o entrambe le opzioni in Architetture target.
  6. Seleziona Require in Accesso a internet.
  7. Seleziona Input System Package (New) in Gestione input attiva.
  8. Specifica il dominio della tua azienda in Package Name (Nome pacchetto).
  9. Se è stato selezionato Vulkan come API grafica:
    • Deseleziona la casella di controllo Applica la rotazione del display durante il rendering in Impostazioni Vulkan.
    • Se la versione di Unity è 2021.2 o successiva, seleziona ETC2 in Formato di compressione delle texture.
  10. Se la versione di Unity è 2023.1 o successiva, seleziona Activity e cancella GameActivity in Application Entry Point.

Impostazioni di pubblicazione

Vai a Impostazioni progetto > Player > Impostazioni di pubblicazione.

  1. Nella sezione Compilazione, seleziona Custom Main Gradle Template e Custom Gradle Properties Template.
  2. Aggiungi le seguenti righe alla sezione delle dipendenze di Assets/Plugins/Android/mainTemplate.gradle:

      implementation 'androidx.appcompat:appcompat:1.6.1'
      implementation 'com.google.android.gms:play-services-vision:20.1.3'
      implementation 'com.google.android.material:material:1.12.0'
      implementation 'com.google.protobuf:protobuf-javalite:3.19.4'
    
  3. Aggiungi le seguenti righe a Assets/Plugins/Android/gradleTemplate.properties:

      android.enableJetifier=true
      android.useAndroidX=true
    

Impostazioni di gestione del plug-in XR

Vai a Impostazioni progetto > Gestione plug-in XR.

  1. Seleziona Cardboard XR Plugin in Fornitori di plug-in.

Compila il progetto

Vai a File > Impostazioni di compilazione.

  1. Seleziona Compila oppure scegli un dispositivo e seleziona Compila ed esegui.

Configurazione delle impostazioni del progetto per iOS

Vai a File > Impostazioni di compilazione.

  1. Seleziona iOS e scegli Cambia piattaforma.
  2. Seleziona Aggiungi scene aperte e scegli HelloCardboard.

Impostazioni del player

Risoluzione e presentazione

Vai a Impostazioni progetto > Player > Risoluzione e presentazione.

  1. Imposta Orientamento predefinito su Orizzontale a sinistra o Orizzontale a destra.

Altre impostazioni

Vai a Impostazioni progetto > Player > Altre impostazioni.

  1. In Descrizione dell'utilizzo della videocamera, scrivi Cardboard SDK requires camera permission to read the QR code (required to get the encoded device parameters)..
  2. In Versione iOS minima target, scrivi 12.0.
  3. Specifica il dominio della tua azienda in Package Name (Nome pacchetto).

Impostazioni di gestione del plug-in XR

Vai a Impostazioni progetto > Gestione plug-in XR.

  1. Seleziona Cardboard XR Plugin in Fornitori di plug-in.

Compila il progetto

Vai a File > Impostazioni di compilazione.

  1. Seleziona Compila o Compila ed esegui.

Ricentrare

L'SDK Cardboard ti consente di centrare il tracker per la testa utilizzando Recenter().

Per provarlo utilizzando l'applicazione di esempio:

  1. Sposta il dispositivo nella posizione in cui vuoi eseguire il nuovo riallineamento (da utilizzare come nuova posa della testa in avanti).
  2. Tieni premuto l'attivatore del tuo dispositivo Cardboard per almeno tre secondi.
  3. Rilascia l'attivatore.
  4. La posa iniziale è ora nella direzione in cui è rivolta la fotocamera.

Attivare e disattivare la modalità VR

L'API Unity XR Plugin Management ti consente di attivare o disattivare la modalità VR per il plug-in Google Cardboard XR per Unity. La documentazione per gli utenti finali e gli esempi di utilizzo sono disponibili nella documentazione per gli utenti finali di Unity.

La scena VrMode nell'esempio HelloCardboard mostra un utilizzo di base dell'API sopra menzionata. In questa scena, la modalità VR può essere disattivata toccando Esci e può essere riattivata semplicemente toccando un punto qualsiasi dello schermo. Consulta VrModeController.cs per informazioni dettagliate su come viene eseguita questa operazione.

Passaggi successivi