Sguardo con la testa in Unity

Lo sguardo fisso è il modo principale per consentire agli utenti di impostare come destinazione gli ologrammi creati dall'app Realtà mista.

Implementazione dello sguardo rivolto verso la testa

Concettualmente, si determina lo sguardo rivolto verso la testa proiettando un raggio in avanti dal visore dell'utente per vedere cosa raggiunge. In Unity la posizione e la direzione della testa dell'utente vengono esposte tramite la fotocamera, in particolare UnityEngine.Camera.main. transform.forward e UnityEngine.Camera.main. transform.position.

Chiamando Physics.RayCast è possibile ottenere un RaycastHit contenente informazioni sulla collisione, tra cui il punto di collisione 3D e l'altro GameObject, l'impatto del raggio con lo sguardo rivolto verso la testa.

Esempio: Implementare lo sguardo rivolto verso la testa

void Update()
{
       RaycastHit hitInfo;
       if (Physics.Raycast(
               Camera.main.transform.position,
               Camera.main.transform.forward,
               out hitInfo,
               20.0f,
               Physics.DefaultRaycastLayers))
       {
           // If the Raycast has succeeded and hit a hologram
           // hitInfo's point represents the position being gazed at
           // hitInfo's collider GameObject represents the hologram being gazed at
       }
}

Procedure consigliate

Mentre l'esempio precedente genera un singolo raycast dal ciclo di aggiornamento per trovare la destinazione a cui punta la testa dell'utente, è consigliabile usare un singolo oggetto per gestire tutti i processi di punta e sguardo. La combinazione della logica head-gaze consente di risparmiare potenza di elaborazione preziosi per l'app e limitare il raycasting a uno per ogni fotogramma.

Visualizzazione dello sguardo rivolto verso la testa

Proprio come con un puntatore del mouse su un computer, è necessario implementare un cursore che rappresenta lo sguardo alla testa dell'utente. Conoscere il contenuto di destinazione di un utente aumenta l'attendibilità di ciò con cui sta per interagire.

Sguardo rivolto verso il Realtà mista Toolkit

È possibile accedere al head-gaze da Input Manager in MRTK.

Successivo checkpoint di sviluppo

Se si sta seguendo il percorso di sviluppo di Unity che è stato previsto, si stanno esplorando i blocchi predefiniti principali di MRTK. Da qui è possibile passare al blocco predefinito successivo:

In alternativa, passare alle API e funzionalità della piattaforma di realtà mista:

È sempre possibile tornare ai checkpoint per lo sviluppo con Unity in qualsiasi momento.

Vedere anche