Esercizio: Introduzione a Holographic Remoting per PC

Completato

Queste sono le esercitazioni su HoloLens 2. In questa esercitazione si apprenderà come creare un'esperienza di Realtà mista che include elementi dell'interfaccia utente, manipolazione del modello 3D, ritaglio del modello e funzionalità di tracciamento oculare. Nella seconda esercitazione si apprenderà come creare un'app per PC per Holographic Remoting che consente di connettersi a HoloLens 2 in qualsiasi momento e visualizzare l'app in 3D.

Per completare correttamente questa esercitazione, è necessario avere alcune conoscenze di base su Unity e su Realtà mista Toolkit (MRTK). Se non la si ha, è consigliabile completare le esercitazioni introduttive prima di continuare.

Creare e preparare il progetto Unity

In questa sezione verrà creato un nuovo progetto Unity per prepararsi allo sviluppo con MRTK.

Passare al percorso dei concetti fondamentali di HoloLens 2 e completare i moduli, ma arrestarsi quando si raggiungono i moduli HoloLens 2. In seguito al completamento di queste istruzioni, è necessario eseguire le operazioni seguenti:

  1. Ha creato il progetto Unity e gli ha assegnato un nome appropriato; Ad esempio, PC Holographic Remoting.
  2. Sarà passato alla piattaforma di compilazione.
  3. Avrà importato il pacchetto TextMeshPro Essential Resources.
  4. Avrà importato il Toolkit di Realtà mista e avrà configurato il progetto Unity.
  5. Avrà creato e impostato la scena e le avrà dato un nome appropriato, ad esempio Holographic Remoting per PC.

Importare gli asset dell'esercitazione

Scaricare e importare MRTK. HoloLens2.Unity.Tutorials.Assets.PCHolographicRemoting.3.0.0.unitypackage .

Suggerimento

Per rivedere la procedura di importazione di un pacchetto personalizzato di Unity, è possibile fare riferimento alle istruzioni sull'importazione del Toolkit di Realtà mista.

Dopo l'importazione degli asset dell'esercitazione, la finestra Project (Progetto) avrà un aspetto simile al seguente:

Screenshot of Project window.

Configurare e preparare la scena

In questa sezione verrà preparata la scena aggiungendo alcuni dei prefab dell'esercitazione.

  1. In primo luogo, poiché alcuni dei modelli sono in formato glTF che Unity non supporta in modo nativo, è necessario installare un pacchetto che consenta l'importazione.

    Per installare la libreria glTFast open source, scaricare ed eseguire questo file: https://package-installer.glitch.me/v1/installer/OpenUPM/com.atteneder.gltfast?registry=https%3A%2F%2Fpackage.openupm.com& scope=com.atteneder

    Screenshot of importing glTFast.

    Seleziona Importa

    Screenshot of new scope registry imported.

    Selezionare Chiudi.

  2. Nella finestra Progetto passare alla cartella Asset>MRTK.Tutorials.PCHolograhicRemoting>Prefab. Selezionare il prefab SceneContent e trascinarlo nella parte inferiore della finestra Gerarchia .

    Screenshot of Adding prefabs 2.

    Per visualizzare la scena dal punto di vista della fotocamera, fare clic con il pulsante destro del mouse sull'oggetto Main Fotocamera nella finestra Hierarchy (Gerarchia), quindi scegliere Allinea visualizzazione su selezionata.

    Screenshot of Focus objects on scene.

    Suggerimento

    Se si ritiene che le icone grandi nella scena distraggono (ad esempio, le icone "T" incorniciate di grandi dimensioni), è possibile nasconderle attivando o disattivando laposizione Off .

Configurare i pulsanti per il funzionamento della scena

In questa sezione si aggiungeranno gli script nella scena per creare eventi pulsante a dimostrazione delle nozioni di base sulla funzionalità di passaggio a un altro modello e di ritaglio.

Configurare il componente Pulsante interattivo (script)

  1. Nella finestra Hierarchy (Gerarchia) espandere gli oggetti SceneContent e ButtonParent e selezionare il pulsante Avanti . Nella finestra Inspector (Controllo) individuare il componente Pressable Button e selezionare l'icona del segno più (+) sotto l'evento OnClick ().

    Screenshot of expanding the Interactable script.

  2. Con l'oggetto NextButton ancora selezionato nella finestra Gerarchia, trascinare l'oggetto ButtonParent dalla finestra Gerarchia nel campo None (Object) vuoto dell'evento appena aggiunto per fare in modo che l'oggetto ButtonParent rimanga in ascolto dell'evento di clic del pulsante attivato a partire da questo pulsante:

    Screenshot of Adding ButtonParent to the None Object.

  3. Selezionare l'elenco a discesa No Function dello stesso evento, quindi selezionare ViewButtonControl>NextModel () per impostare la funzione NextModel () come azione attivata quando viene premuto il pulsante:

    Screenshot of selecting ViewButtonControl and NextModel.

Configurare i pulsanti rimanenti

  • Per ognuno dei pulsanti rimanenti, completa il processo descritto in precedenza per assegnare funzioni agli eventi OnClick ():

    • Per l'oggetto PreviousButton, assegnare la funzione ViewButtonControl>PreviousModel ().
    • Per ClippingButton, selezionare la funzione ToggleButton>ToggleClipping ().

Configurare il pulsante di visualizzazione (script) e i componenti interruttore (script)

A questo punto i pulsanti sono configurati per dimostrare il funzionamento della funzionalità di passaggio a un altro modello e di ritaglio. Successivamente, si aggiungeranno modelli 3D alla scena e gli oggetti di ritaglio allo script.

Sono presenti sei modelli 3D diversi per la dimostrazione. Espandere l'oggetto ModelParent per esporre questi modelli.

  1. Con l'oggetto ButtonParent ancora selezionato nella finestra Hierarchy (Gerarchia), individua nella finestra Inspector (Controllo) il componente View Button Control (Script) (Controllo pulsante di visualizzazione - Script) ed espandi la variabile Models (Modelli).

    Nel campo Dimensioni immettere il numero di modelli 3D che si desidera avere nella scena. In questo caso, sei. In questo modo vengono creati campi per l'aggiunta di nuovi modelli 3D.

    Screenshot of entering the number of 3D models.

  2. Trascinare ogni oggetto figlio dell'oggetto ModelParent in questi campi.

    Screenshot of dragging and drop each child object.

  3. Trascinare l'oggetto ClippingObjects dalla finestra Gerarchia nel campo Clipping Object del componente Interruttore (Script).

    Nota

    Rimanere solo nell'oggetto ButtonParent.

    Screenshot of dragging and drop clipping object.

  4. Nella finestra Hierarchy (Gerarchia) selezionare il prefab ClippingObjects e abilitarlo nella finestra Inspector (Controllo) per attivare gli oggetti Ritaglio.

Configurare gli oggetti di ritaglio per abilitare la funzionalità di ritaglio

In questa sezione si aggiungerà il renderer degli oggetti figlio dell'oggetto MarsCuriosityRover in un singolo oggetto di ritaglio per illustrare il funzionamento del ritaglio del modello MarsCuriosityRover.

Nella finestra Gerarchia espandere l'oggetto ClippingObjects per esporre i tre diversi oggetti di ritaglio che verranno usati in questo progetto.

  1. Per configurare l'oggetto ClippingSphere , selezionarlo e quindi aggiungere un componente Clipping Sphere nella finestra Inspector (Controllo). Immettere quindi il numero di renderer nel campo Dimensioni da aggiungere per il modello 3D. In questo caso, aggiungere 10 per gli oggetti figlio MarsCuriosityRover. Verranno creati campi per l'aggiunta di renderer. Trascinare quindi gli oggetti del modello figlio dell'oggetto MarsCuriosityRover in questi campi.

    Screenshot of configuring Clipping Objects to enable clipping feature.

  2. Verificare che gli oggetti Clipping siano attivati abilitando il prefab ClippingObjects nella finestra Hierarchy (Gerarchia).