Plataforma cruzada usando o sistema de Plug-in do SDK do XR do Unity
O desenvolvimento inicial do World Locking Tools visava a família de dispositivos HoloLens por meio das APIs do XR.WSA (Aplicativo da Windows Store da VR/RA) do Unity. Isso faz parte do que se tornou comumente conhecido como interface de XR Herdada do Unity ou suporte a VR integrado do Unity.
Desde então, o Unity introduziu sua arquitetura de Plug-in do XR, cujo objetivo é fornecer abstrações de plataforma cruzada, dando aos desenvolvedores o acesso aos recursos comuns nos dispositivos de VR e RA disponíveis.
Durante essa fase de transição, o WLT deu suporte à interface de XR Herdada para HoloLens e ao AR Subsystems
/XR Plugin Management
para plataforma cruzada. Deve-se observar que a interface de XR Herdada foi preterida desde o Unity 2019 e não tem mais suporte a partir do Unity 2020.
No momento, o WLT dá suporte aos Subsistemas de RA versão 2.X.Y para Unity 2019.4 (LTS) e ao Gerenciamento de Plug-ins do XR versão 4.0.7 e posterior para Unity 2020.3 (LTS). O suporte a versões posteriores será lançado nas versões subsequentes.
Como alternar do WLT para o SDK do XR de destino
O direcionamento do WLT para o SDK do XR é extremamente simples. Primeiro, configure o projeto para usar o sistema de Plug-in do XR.
Se estiver usando MRTK
, siga estas instruções. Há dicas e observações adicionais mais adiante neste artigo.
Se não estiver usando MRTK
, siga estas instruções um pouco mais complicadas.
Em ambos os casos, você acabará com o sistema XR Plug-in Management
do Unity instalado e habilitado e com um XR Plug-in provider
apropriado para a plataforma instalada e selecionada.
Depois que os recursos necessários forem instalados, altere o tipo de Subsistema de Âncora no Contexto de Bloqueio de Mundo na cena.
Seleção automática
A execução do script Mixed Reality => World Locking Tools => Configure scene
selecionará o Subsistema de Âncora correto de acordo com a forma como o projeto e a cena foram configurados. É seguro executar o script Configure scene
repetidamente. Se a cena já estiver configurada corretamente, ela não fará alterações.
Seleção manual
- Acesse o WorldLockingManager GameObject na cena inicial (ou global).
- No inspetor, encontre o WorldLockingContext.
- Abra as configurações de Gerenciamento de Âncoras.
- Verifique se a caixa de seleção "Usar Padrões" está desmarcada.
- Altere o tipo de Subsistema de Âncora para
XRSDK
.
Se o projeto e a cena foram configurados para usar AR Foundation
, selecione o Subsistema de Âncora AR Foundation
. Os exemplos do Azure Spatial Anchors mostram uma configuração adequada para usar AR Foundation
(no momento, um requisito do ASA).
Como usar o MRTK com WLT no SDK do XR
MRTK, além do valor incrível que ele oferece para abstrair as interações do usuário na VR e na RA, simplifica muito os dispositivos de direcionamento por meio do SDK do XR. Veja a seguir as observações que podem ser úteis ao configurar o MRTK para direcionar dispositivos específicos.
Todas elas pressupõem que o Subsistema de Âncora do Gerenciamento de Âncoras do WLT foi definido adequadamente, conforme descrito na seção anterior.
Execute o Mixed Reality Toolkit => Utilities => UnityAR => Update Scripting Defines
ao alterar os destinos do plug-in.
Instalação do Plug-in do XR do Windows (HoloLens)
Confira as instruções completas Introdução ao MRTK e ao SDK do XR.
Se estiver trabalhando no projeto do WLT, poderá usar o "WLT HL2 MRTKProfile" fornecido pelo WLT no HoloLens2 ou o "WLT AR MRTKProfile" em dispositivos móveis, para iniciar.
O WLT que usa o Plug-in do XR do Windows foi testado no Unity 2019.4 e no Unity 2020.3 com as versões a seguir:
- Gerenciamento de Plug-ins do XR: v3.2.16 (espera-se que funcione com a v3.X.Y, X >= 2)
- Windows XR Plugin: v2.4.1 (antes da v2.4.1 âncoras foram quebradas. Espera-se que funcione v2.4.Y, Y>=1, v2. X.Y, X>=1).
- Mixed Reality OpenXR Plugin: v1.2.0 (versões anteriores funcionavam, com pequenos problemas. O mais recente MR OpenXR Plugin é altamente recomendado.)
Você só precisa de um do Windows MR Plugin
ou do Mixed Reality OpenXR Plugin
.
Instalação do Plug-in do XR do ARCore (Android)
Para fazer com que um Plug-in do XR do Android acione um aplicativo de RA do MRTK, siga as instruções em Como configurar o MRTK para iOS e Android
OBSERVAÇÃO: você precisa de TODOS os recursos a seguir:
- Gerenciamento de Plug-ins do XR (testado na v3.2.16, esperado na v3.X.Y, X>=2).
- Subsistemas de RA (testados na v2.1.3, esperado na v2.X.Y, X>1).
- Plug-in do XR do ARCore (testado na v2.1.12, esperado na v2.X.Y, X>1).
- Foundation da RA (testado na v2.1.10, esperado na v2.X.Y, X>1).
Sugeri usar o "WLT AR MRTKProfile" fornecido pelo WLT para iniciar.
NOTA: Se você encontrar um erro de build sobre falha na fusão do manifesto, siga as devidas instruções aqui: https://developers.google.com/ar/develop/unity/android-11-build
Instalação para outros Plug-ins do XR (ARKit, Oculus etc.)
A instalação de outras plataformas pode ser análoga à instalação do ARCore, mas não foi testada. Se você tiver acesso a esses dispositivos e uma chance de experimentá-los, quaisquer comentários ajudariam a comunidade e seriam muito valorizados.