Como criamos com sucesso nosso primeiro projeto Unity voltado para o dispositivo Quest 2 na postagem anterior, agora obteremos informações sobre um dos mais poderosos conjuntos de recursos fornecidos pelo Meta via Presence Platform.
A Presence Platform foi projetada para criar uma sensação de presença compartilhada e interação em ambientes de realidade virtual. Ele permite que as pessoas se conectem, interajam e se envolvam em espaços virtuais imersivos usando headsets de realidade virtual.
Os recursos e capacidades da Plataforma de Presença da Meta incluem:
Como você pode ver, a Presence Platform é um conjunto abrangente de subsistemas/recursos, e abordarei cada um deles em detalhes, mas para começar - vamos começar com o rastreamento manual como um dos requisitos básicos para o desenvolvimento de jogos VR - configuraremos , construir e lançar jogo de rastreamento de mão como experiência.
Um ponto de partida perfeito é a experiência Unity-FirstHand fornecida pelo oculus-samples repo .
Novamente, consulte a postagem anterior sobre como configurar o ambiente de desenvolvimento e certifique-se de que várias dependências estejam instaladas.
Certifique-se de ter o Git LFS instalado, execute este comando:
git lfs install
Em seguida, clone o repositório usando o "Código", abrindo na área de trabalho do Github e executando o seguinte comando:
git clone https://github.com/oculus-samples/Unity-FirstHand.git
Todos os arquivos do projeto atual estão em Ativos → Projeto. Esta pasta inclui todos os scripts e ativos para executar a amostra, excluindo o próprio SDK de interação. O projeto inclui a v41 do Oculus SDK, incluindo o SDK de interação. Você pode encontrar o SDK de interação em [Assets/Oculus/Interaction]{Assets/Oculus/Interaction).
Depois de instalar todas as dependências necessárias e configurar a compilação para rodar no dispositivo Quest, você obterá algo semelhante ao acima em seu editor.
Vá para Arquivo → Configurações de compilação se estiver usando um Mac.
Se você seguiu as instruções do meu post anterior e conectou seu dispositivo, abaixo está o que você deve ver em Build Settings.
Clique em Construir e executar, aguarde alguns minutos para que o Unity crie e aguarde as mensagens que seu aplicativo está implantando no dispositivo Quest conectado.
Eu sugiro fortemente que você brinque com este exemplo e tente customizar componentes e scripts para aprender como ele funciona internamente, para poder fazer isso vá para a seção Projeto do seu editor Unity e expanda a hierarquia de diretórios do projeto.
Estaremos personalizando o LazerProjectile:
public class LazerProjectile : ActiveStateObserver { [SerializeField] Transform _target; [SerializeField] GameObject _effect; [SerializeField] float _rayCastDelay = 0.5f; [SerializeField] float _fadeOutTime = 0.1f; [SerializeField] float _delayBetweenShots = 0.5f; [SerializeField] AudioTrigger _chargeUp; [SerializeField, Optional] AudioTrigger _chargeUpComplete; protected override void Update() { base.Update(); Vector3 endPos = Vector3.Lerp(_target.position, transform.position + transform.forward * 20, 5 * Time.deltaTime); _target.position = endPos; } //...... }
Vamos aumentar o atraso de lançamento do Ray e testar o aplicativo no fone de ouvido substituindo
float _rayCastDelay = 0.1f;
para
float _rayCastDelay = 0.5f;
Aqui está como funciona!
Experimente você mesmo e deixe-me saber o que você deseja construir usando o rastreamento manual.