O Samsung Galaxy XR já chegou com tecnologia Android XR! Esta postagem faz parte da Semana de Destaques do Android XR, em que oferecemos recursos (postagens no blog, vídeos, exemplos de código e muito mais) para ajudar você a aprender, criar e preparar seus apps para o Android XR.
Nunca houve um momento melhor para começar a desenvolver em XR. Em dezembro passado, anunciamos o Android XR, a nova plataforma Android do Google criada com base em padrões abertos, como OpenXR e Vulkan, que torna o desenvolvimento de XR mais acessível do que nunca.
Quando combinado com as ferramentas de XR atuais do Unity, você tem um stack de desenvolvimento poderoso e maduro. Isso permite criar e implantar apps de RV/RA que funcionam em vários dispositivos.
Não importa se você já desenvolveu para XR ou não, queremos ajudar você a começar.
Este blog vai ajudar você a começar a desenvolver para Android XR e Unity. Vamos focar nas etapas práticas para configurar seu ambiente, entender o ecossistema de pacotes e começar a criar.
Ao final deste blog, você vai entender bem:
- O ecossistema de pacotes
- Etapas essenciais de configuração
- Métodos de entrada
- Privacidade e permissões
- Camadas de composição
Desenvolvimento do Unity para Android XR
Você pode escolher o Unity pela compatibilidade multiplataforma, que permite criar uma vez e implantar no Android XR e em outros dispositivos XR.
Ao usar o Unity, você se beneficia do ecossistema e das ferramentas XR avançadas. Ele já tem pacotes estabelecidos, como o XR Interaction Toolkit, o plug-in OpenXR, as camadas de composição de XR, o XR Hands, uma extensa loja de recursos cheia de componentes e modelos prontos para XR, além de ferramentas de simulação e teste de XR. Desde o lançamento do Unity 6 em novembro passado, você também se beneficia da performance aprimorada do Pipeline de Renderização Universal (URP), do melhor suporte a gráficos Vulkan e dos perfis de build aprimorados.
Confira alguns exemplos de projetos para ter uma ideia do que pode ser feito:
Configuração essencial: sua base de desenvolvimento
Requisitos e instalação do Unity 6
Você vai precisar do Unity 6 para criar seu app, já que as versões anteriores não são compatíveis com o Android XR. Instale primeiro o Unity Hub e depois o Unity 6 com o módulo Android Build Support, seguindo estas etapas.
Perfis de build do Android XR: simplificando a configuração
Os perfis de build do Unity são recursos do projeto que armazenam suas configurações específicas da plataforma. Assim, em vez de precisar configurar manualmente de 15 a 20 configurações diferentes em vários menus, você pode usar um perfil de build para fazer isso automaticamente.
É possível criar seus próprios perfis de build, mas, por enquanto, recomendamos usar o perfil de build dedicado do Android XR que criamos.
Para selecionar seu perfil de build, clique em File > Build Profile no projeto do Unity. Para conferir instruções completas, consulte a página do fluxo de trabalho Desenvolver para Android XR.
Se você fizer mudanças, crie um novo perfil de build para compartilhar com sua equipe. Assim, você garante uma experiência de build consistente em todos os casos.
Depois dessas etapas, você pode criar e executar o APK para dispositivos Android XR.
API de gráficos: por que o Vulkan é importante
Depois de configurar o projeto do Unity com um perfil de build do Android XR, recomendamos primeiro verificar se o Vulkan está definido como sua API gráfica. O Android XR foi criado como uma plataforma que prioriza o Vulkan. Em março de 2025, o Google anunciou que o Vulkan agora é a API gráfica oficial do Android. É uma API gráfica moderna de baixo nível que ajuda os desenvolvedores a maximizar o desempenho das GPUs modernas e desbloqueia recursos avançados, como ray tracing e multithreading, para visuais de jogos realistas e imersivos.
Esses padrões oferecem a melhor compatibilidade para seus aplicativos atuais e facilitam os problemas e custos de migração. Além disso, é possível ativar recursos avançados do Android XR, como URP Application Space Warp e renderização foveada.
O Unity 6 processa o Vulkan automaticamente. Portanto, quando você usa o perfil de build do Android XR, o Unity configura o Vulkan como sua API de gráficos. Isso garante que você tenha acesso a todos os recursos avançados do Android XR sem configuração manual.
Para verificar as configurações da API de gráficos, acesse "Editar" > "Configurações do projeto" > "Player" > "Guia Android" > "Outras configurações" > "APIs de gráficos".
Entender o ecossistema de pacotes
Há dois pacotes diferentes que podem ser usados para o Android XR no Unity. Uma delas é usando as extensões do Android XR para Unity, e a outra é usando o pacote Unity OpenXR: Android XR.
Pode parecer a mesma coisa, mas aguarde um pouco.
O pacote Unity OpenXR: Android XR é o pacote oficial do Unity para suporte ao Android XR. Ele oferece a maioria dos recursos do Android XR, disponibilizados pelos padrões OpenXR. Ele também permite a integração do AR Foundation para recursos de realidade mista. O principal benefício de usar o pacote Unity OpenXR: Android XR é que ele oferece uma API unificada para compatibilidade com dispositivos XR.
Já as Extensões do Android XR para Unity são o pacote de XR do Google, projetado especificamente para o desenvolvimento de dispositivos Android XR. Ele complementa o pacote Unity OpenXR com outros recursos, como modos de fusão de ambiente, malha de cena, rastreamento de imagem e rastreamento corporal. A desvantagem é que você só pode desenvolver para dispositivos Android XR.
A escolha depende das suas necessidades específicas, mas geralmente recomendamos usar o Unity OpenXR: Android XR, porque ele oferece muito mais flexibilidade para os dispositivos compatíveis com seu app. Depois, com base nos requisitos do aplicativo, você pode adicionar as extensões do Android XR para Unity.
Como instalar pacotes
Para adicionar um novo pacote, com o projeto aberto no Unity, selecione "Window" > "Package Management" > "Package Manager".
Nela, você pode instalar esses pacotes na guia "Registro do Unity":
Para instalar o pacote do Android XR para Unity pelo GitHub, selecione o ícone ➕, escolha "Install package from git URL" e insira "https://github.com/android/android-xr-unity-package.git".
Recursos obrigatórios do OpenXR
Agora que você instalou os pacotes necessários, vamos ativar alguns recursos principais para que o projeto funcione.
Para ativar a configuração do OpenXR no Android, clique em Edit > Project Settings > XR Plugin Management > Clique em Android e ative o OpenXR.
Em seguida, ative o suporte para "Android XR". Vamos abordar outros recursos do OpenXR conforme necessário. Por enquanto, só precisamos que o suporte ao Android XR esteja ativado.
Entrada
O Android XR é compatível com entrada de dados por mãos, voz, acompanhamento ocular, teclado e controles. Recomendamos instalar o XR Interaction Toolkit e o XR Hands, porque eles contêm os melhores prefabs para começar. Ao usar esses elementos prefabricados, você terá tudo o que precisa para oferecer suporte a mãos e controladores no seu app.
Depois que os kits de ferramentas XR Hands e XR Interactive estiverem instalados, recomendo importar os recursos iniciais e a Demonstração de interação com as mãos. Em seguida, ative os perfis Interação com as mãos e Controlador simples do Khronos e ative os recursos Subsistema de rastreamento das mãos e Meta Hand Tracking Aim.
Para editar essas configurações, acesse Editar > Configurações do projeto > Gerenciamento de plug-ins XR > OpenXR.
Também recomendamos o prefab do Unity, Origem de XR, que representa a posição e a orientação do usuário no espaço de XR. Ele contém o suporte da câmera e os componentes de rastreamento necessários para renderizar sua experiência de XR do ponto de vista correto.
A maneira mais simples de adicionar esse prefab é importá-lo da demonstração de integração de mãos que importamos anteriormente. Ela pode ser encontrada aqui: "Hands Integration Toolkit" > "Hand Interaction" > "Prefabs" > "XR Origin"
Recomendo usar esse prefab em vez da opção "Origem de XR" nos objetos do jogo, porque ele usa o gerenciador de modalidade de entrada de XR, que alterna automaticamente entre as mãos e os controladores dos usuários. Isso vai garantir o melhor sucesso ao trocar de mãos e controles.
Privacidade e permissões: como conquistar a confiança do usuário
Seja qual for o que você criar, será necessário capturar permissões de execução dos usuários. Isso porque a compreensão de cena, o acompanhamento ocular, a captura de expressões faciais e a captura de movimentos das mãos fornecem acesso a dados que podem ser mais sensíveis para o usuário.
Esses recursos fornecem informações pessoais mais detalhadas do que os apps tradicionais para computador ou dispositivos móveis. Por isso, as permissões de tempo de execução garantem que os usuários tenham controle total sobre os dados que escolhem compartilhar. Para seguir as políticas de segurança e privacidade do Android, o Android XR tem permissões para cada um desses recursos.
Por exemplo, se você usar o pacote XR Hands para gestos personalizados com as mãos, será necessário solicitar a permissão de captura de movimentos das mãos (veja abaixo), já que esse pacote precisa rastrear muitas informações sobre as mãos do usuário. Isso inclui o rastreamento de poses de articulações das mãos e velocidades angulares e lineares.
Observação: para conferir uma lista completa de extensões que exigem permissões, acesse as informações no site para desenvolvedores de XR.
const string k_Permission = "android.permission.HAND_TRACKING";
#if UNITY_ANDROID
void Start()
{
if (!Permission.HasUserAuthorizedPermission(k_Permission))
{
var callbacks = new PermissionCallbacks();
callbacks.PermissionDenied += OnPermissionDenied;
callbacks.PermissionGranted += OnPermissionGranted;
Permission.RequestUserPermission(k_Permission, callbacks);
}
}
void OnPermissionDenied(string permission)
{
// handle denied permission
}
void OnPermissionGranted(string permission)
{
// handle granted permission
}
#endif // UNITY_ANDROIDComo melhorar a qualidade visual com camadas de composição
Uma camada de composição é a maneira recomendada de renderizar elementos de interface. Eles permitem mostrar elementos com uma qualidade muito maior em comparação com o pipeline de renderização padrão do Unity, já que tudo é renderizado diretamente no compositor da plataforma.
Por exemplo, se você estiver mostrando texto, a renderização padrão do Unity terá mais chances de apresentar texto desfocado, bordas suaves e artefatos visuais. Já com camadas de composição, o texto fica mais nítido, os contornos mais definidos e a experiência geral é melhor.
Além de texto, ele também renderiza vídeos, imagens e elementos da interface do usuário com uma qualidade muito maior. Isso é feito usando o suporte nativo para as camadas do compositor do tempo de execução.
Para ativar as camadas de composição, abra o Gerenciador de pacotes, selecione "Unity Register" e instale "Camadas de composição de XR".
Criar e executar
Agora que você instalou os pacotes do OpenXR e ativou os recursos, uma configuração de prefab para movimento das mãos e da cabeça permite criar sua cena e implantar diretamente no headset para teste.
Próxima etapa: aprimorar suas habilidades
Agora que você configurou seu ambiente de desenvolvimento do Android XR e entende os conceitos principais, confira as próximas etapas para continuar sua jornada de desenvolvimento de XR:
Recursos essenciais para o aprendizado contínuo:
- Documentação para desenvolvedores do Android XR: guias abrangentes para todos os recursos do Android XR
- Manual de desenvolvimento do Unity XR: recursos oficiais de desenvolvimento do Unity XR.
Exemplos de projetos para explorar:
- Exemplos do Android XR Unity: projetos de exemplo oficiais do Google que mostram diferentes recursos do Android XR.
- Exemplos do Unity XR Interaction Toolkit: exemplos abrangentes de interações de XR e mecânicas de jogo.
- Modelo de RV do Unity: um ponto de partida completo para projetos de RV
- Modelo multijogador de RV: explore experiências sociais de XR
Continuar lendo
-
Tutoriais
Embora o desempenho do app seja frequentemente associado a uma interface suave e tempos de inicialização rápidos, a memória serve como a base silenciosa em que essas métricas visíveis são construídas. Não é segredo que estamos passando por uma mudança em que a memória do dispositivo é mais importante do que nunca.
Alice Yuan, Ajesh Pai, Fung Lam • Leitura de 10 minutos
-
Tutoriais
Hoje, temos o prazer de anunciar uma nova credencial de e-mail verificada emitida pelo Google, que os desenvolvedores podem recuperar diretamente da API Digital Credential do Credential Manager do Android.
Niharika Arora, Jean-Pierre Pralle • Leitura de 3 minutos
-
Tutoriais
Não importa se você está usando o Gemini no Android Studio, na CLI do Gemini, no Antigravity ou em agentes de terceiros, como o Claude Code ou o Codex. Nossa missão é garantir que o desenvolvimento de alta qualidade para Android seja possível em qualquer lugar.
Adarsh Fernando, Esteban de la Canal • Leitura de 4 minutos
Fique por dentro
Receba os insights mais recentes sobre desenvolvimento Android na sua caixa de entrada semanalmente.