O SDK do ARCore para Unity foi descontinuado em 2021 e não é mais compatível. Além disso, o SDK do ARCore para Unity não pode ser usado com o Unity 2020 e versões mais recentes. Os desenvolvedores que iniciam novos projetos precisam usar as extensões do ARCore para RA Foundation. Este SDK só deve ser usado por desenvolvedores que trabalham em projetos existentes que não podem migrar para a RA Foundation.

Ativar o ARCore para Android

Mantenha tudo organizado com as coleções Salve e categorize o conteúdo com base nas suas preferências.

Esta página descreve como ativar a funcionalidade do ARCore nos projetos do Unity destinados aos dispositivos Android. Para fazer isso, você precisa:

  1. Importar o SDK do ARCore para Unity
  2. Configurar seu app para ser RA obrigatório ou RA opcional
  3. Verificar se o app está em conformidade com os Requisitos de privacidade do usuário do ARCore'

Google Play Services para RA

Os SDKs do ARCore disponibilizam recursos de RA em dispositivos compatíveis com o ARCore que têm o Google Play Services para RA (ARCore) instalado.

O Google Play Services para RA é instalado e atualizado automaticamente na grande maioria dos dispositivos compatíveis.

Antes de iniciar uma sessão de RA, os apps precisam:

  1. Verifique se há suporte para o ARCore chamando CheckApkAvailability.
  2. Verifique se o Google Play Services para RA está instalado e atualizado e se os dados de perfil do dispositivo do ARCore necessários foram salvos, chamando Session.RequestApkInstallation(bool userRequested).

Importar o SDK do ARCore para Unity

  1. Abra o Unity e crie um novo projeto 3D.

  2. Instalar pacotes específicos da versão.

    Unity 2020

    Selecione Window > Package Manager e instale os seguintes pacotes:

    • HLAPI multiplayer (obrigatório pela amostra do Cloud Anchors)
    • Gerenciamento de plug-ins do XR (obrigatório pelo Instant Preview, que usa o TrackedPoseDriver)

    Unity 2019

    Selecione Window > Package Manager e instale os seguintes pacotes:

    • HLAPI multiplayer (obrigatório pela amostra do Cloud Anchors)
    • XR Legacy Input Helpers (obrigatório pela visualização instantânea, que usa o TrackedPoseDriver)

    Unity 2018

    Não são necessários pacotes adicionais. Prossiga para a próxima etapa.

    Unity 2017

    Não são necessários pacotes adicionais. Prossiga para a próxima etapa.

  3. Importe o SDK do ARCore para Unity:

    1. Selecione Assets > Import Package > Custom Package.

    2. Selecione o arcore-unity-sdk-1.25.0.unitypackage que você salvou.

    3. Na caixa de diálogo Import Package, verifique se todas as opções de pacotes estão selecionadas e clique em Import.

Na janela "Project" do Unity, você verá os arquivos de SDK e o app de amostra HelloAR em Assets/GoogleARCore/Examples/HelloAR/.

Configurar seu app para ser RA obrigatório ou RA opcional

Um app compatível com recursos de RA pode ser configurado de duas maneiras: RA necessária e RA opcional. Se precisar de ajuda para decidir qual escolher, consulte Publicar apps de RA na Google Play Store.

RA obrigatória

Para poder ser usada, um app que precisa de RA requer um dispositivo compatível com o ARCore que tenha o Google Play Services para RA instalado.

Para ver mais informações, consulte Como publicar apps de RA na Google Play Store.

Para tornar a RA de um app obrigatória, siga estas etapas.

Unity 2020

  1. Abra Edit > Project Settings. Selecione Google ARCore e verifique se a opção ARCore necessário está marcada.

  2. Para definir o nível mínimo de API, clique em Edit > Project Settings > Player e selecione a guia com o ícone do Android. Em Other Settings > Identification, selecione o nível mínimo da API: 24 ou mais recente.

Unity 2019

  1. Abra Edit > Project Settings. Selecione Google ARCore e verifique se a opção ARCore necessário está marcada.

  2. Para definir o nível mínimo de API, clique em Edit > Project Settings > Player e selecione a guia com o ícone do Android. Em Other Settings > Identification, selecione o nível mínimo da API: 24 ou mais recente.

Unity 2018

  1. Abra Edit > Project Settings. Selecione Google ARCore e verifique se a opção ARCore necessário está marcada.

  2. Para definir o nível mínimo de API, clique em Edit > Project Settings > Player e selecione a guia com o ícone do Android. Em Other Settings > Identification, selecione o nível mínimo da API: 24 ou mais recente.

Unity 2017

  1. Abra Edit > Project Settings > Google ARCore e verifique se ARCore Required está marcado.

  2. Para definir o nível mínimo de API, clique em Edit > Project Settings > Player e selecione a guia com o ícone do Android. Em Other Settings > Identification, selecione o nível mínimo da API: 24 ou mais recente.

Seu app vai realizar automaticamente verificações de tempo de execução para garantir que o dispositivo seja compatível com o ARCore e tenha o Google Play Services para RA instalado e que os dados do perfil do dispositivo do ARCore sejam atualizados. Se o Google Play Services para RA não estiver instalado, possivelmente porque foi removido pelo usuário, ou se a versão for muito antiga, o app solicitará que o usuário o instale ou atualize. Se os dados de perfil do dispositivo do ARCore não estiverem atualizados, o app vai fazer o download e a atualização. Se a instalação ou a atualização falharem, possivelmente devido a uma falha na rede, o Session.Status vai retornar um erro, e seu app deve processar o erro e sair.

RA (opcional)

Um app de RA (opcional) tem recursos de RA opcionais, que são ativados apenas em dispositivos com o Google Play Services para RA instalado.

  • Os apps opcionais de RA podem ser instalados e executados em dispositivos que não são compatíveis com o ARCore.

  • Quando os usuários instalarem um app opcional de RA, a Google Play Store não instalará automaticamente o Google Play Services para RA com o app.

Para tornar a RA de um app opcional, siga estas etapas.

Unity 2020

  1. Abra Edit > Project Settings. Selecione Google ARCore e desmarque ARCore necessário.

  2. Para definir o nível mínimo de API, clique em Edit > Project Settings > Player e selecione a guia com o ícone do Android. Em Other Settings > Identification, selecione o nível mínimo da API: 18 ou mais recente.

Unity 2019

  1. Abra Edit > Project Settings. Selecione Google ARCore e desmarque ARCore necessário.

  2. Para definir o nível mínimo de API, clique em Edit > Project Settings > Player e selecione a guia com o ícone do Android. Em Other Settings > Identification, selecione o nível mínimo da API: 18 ou mais recente.

Unity 2018

  1. Abra Edit > Project Settings. Selecione Google ARCore e desmarque ARCore necessário.

  2. Para definir o nível mínimo de API, clique em Edit > Project Settings > Player e selecione a guia com o ícone do Android. Em Other Settings > Identification, selecione o nível mínimo da API: 18 ou mais recente.

Unity 2017

  1. Abra Edit > Project Settings > Google ARCore e desmarque ARCore required.

  2. Para definir o nível mínimo de API, clique em Edit > Project Settings > Player e selecione a guia com o ícone do Android. Em Other Settings > Identification, selecione o nível mínimo da API: 18 ou mais recente.

Executar verificações de tempo de execução

Quando iniciado, seu app precisa chamar Session.CheckApkAvailability() para verificar se o dispositivo é compatível com o ARCore e, em caso afirmativo, se o Google Play Services para dados do perfil do dispositivo de AR e ARCore está instalado e atualizado.

O app precisa processar estas condições:

Condição Ação
O dispositivo não oferece suporte ao ARCore. Oculta a funcionalidade relacionada à RA.
O dispositivo oferece suporte ao ARCore, mas o Google Play Services para dados de perfil de dispositivo de RA e/ou ARCore não está instalado ou desatualizado. Solicita que o usuário instale ou atualize o Google Play Services para dados de perfil de dispositivo de RA e/ou ARCore chamando Session.RequestApkInstallation().
O dispositivo oferece suporte ao ARCore e ao Google Play Services para dados de perfil de dispositivo de RA e ARCore instalados e atualizados. Cria um Session do ARCore e começa a usar o ARCore.

Requisitos de privacidade do usuário

Verifique se o app está em conformidade com os Requisitos de privacidade do usuário do ARCore.

Próximas etapas

Leia o código no app de exemplo e referência da API ARCore para Unity.