Olhar de cabeça na Unidade

O gaze é a principal forma de os utilizadores direcionarem os hologramas que a sua app cria na Realidade Mista.

Implementação de olhar de cabeça

Conceptualmente, você determina o olhar de cabeça projetando um raio para a frente a partir dos auscultadores do utilizador para ver o que ele atinge. Em Unidade, a posição e direção da cabeça do utilizador são expostas através da Câmara,especificamente UnityEngine.Camera.main. transform.forward e UnityEngine.Camera.main. transformar.position.

Chamando a Física.RayCast dá-lhe um RaycastHit contendo informações sobre a colisão, incluindo o ponto de colisão 3D e o outro GameObject o raio de olhar de cabeça atingido.

Exemplo: Implementar o olhar de cabeça

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
       }
}

Melhores práticas

Embora o exemplo acima dispare um único raycast do loop de atualização para encontrar o alvo onde a cabeça do utilizador aponta, recomendamos a utilização de um único objeto para gerir todos os processos de olhar de cabeça. Combinar a sua lógica de olhar de cabeça salvará o poder de processamento precioso da sua aplicação e limitará o seu raycasting a um por quadro.

Visualizando o olhar de cabeça

Tal como acontece com um ponteiro de rato num computador, deve implementar um cursor que represente o olhar de cabeça do utilizador. Saber que conteúdo um utilizador está a direcionar aumenta a confiança no que está prestes a interagir.

Head-gaze no Kit de Ferramentas de Realidade Mista

Pode aceder ao head-gaze do Gestor de Entradas no MRTK.

Próximo checkpoint de desenvolvimento

Se está a seguir a jornada de desenvolvimento da Unidade que estabelecemos, está no meio de explorar os blocos de construção do MRTK. A partir daqui, pode continuar até ao próximo bloco de construção:

Ou saltar para as capacidades da plataforma de realidade mista e APIs:

Pode sempre voltar aos postos de controlo de desenvolvimento da Unidade a qualquer momento.

Ver também