Mudanças novas e importantes no ARCore.
Novidades da ARCore v1.48.0
O suporte para o Unity 6 e o AR Foundation 6 foi totalmente lançado
As extensões do ARCore para a AR Foundation do Unity agora oferecem suporte à AR Foundation 6. Use os seguintes métodos de instalação para conseguir uma versão compatível das extensões ARCore para a AR Foundation:
- Por
Add package from git url...
: usehttps://github.com/google-ar/arcore-unity-extensions.git#arf6
, - Por
Add package from tarball...
: use uma versão indicada porarf6
na página de versões.
Para fazer upgrade do seu projeto da AR Foundation 5 para a 6, consulte o guia a seguir.
Mudanças importantes e de comportamento
- O SDK não oferece mais suporte a destinos de implantação para versões do iOS anteriores à 13.0
Novidades da ARCore v1.47.0
Suporte Beta para Unity 6 e AR Foundation 6
As extensões do ARCore para a AR Foundation do Unity agora têm suporte Beta para a AR Foundation 6, oferecendo suporte ao Unity 6. Use os seguintes métodos de instalação para conseguir uma versão compatível das extensões ARCore para a AR Foundation:
- Por
Add package from git url...
: usehttps://github.com/google-ar/arcore-unity-extensions.git#arf6
, - Por
Add package from tarball...
: use uma versão indicada porarf6
na página de versões.
Para fazer upgrade do seu projeto da AR Foundation 5 para a 6, consulte o guia a seguir.
Correções de bugs
- O plano do Cloud Anchor Sample não é mais transparente para o Unity 6.
Outras mudanças
- A ramificação
main
do repositório do GitHub das extensões do ARCore foi alterada para acompanhar a ramificaçãoarf5
.
Novidades da ARCore v1.46.0
Mudanças na targetSdkVersion
do SDK do ARCore
O targetSdkVersion
do ARCore foi atualizado para o nível 35 da API do Android. Se o
app não especificar um
targetSdkVersion
,
o targetSdkVersion
do app vai se tornar 35 devido à fusão
de manifestos.
No Unity, especificar um Nível da API de destino em Project
Settings > Player > Android > Other Settings vai substituir o valor
targetSdkVersion
do ARCore.
Novidades da ARCore v1.45.0
API Flash Mode
O ARCore agora oferece suporte à ativação do modo lanterna do dispositivo, permitindo melhores recursos de percepção em ambientes escuros.
Android (Kotlin/Java)
Config.FlashMode
: opção de configuração para ativar ou desativar a unidade de flash no dispositivo.- Consulte o guia para desenvolvedores para mais detalhes sobre como detectar recursos de flash e ativar o modo lanterna.
Android NDK (C)
ArFlashMode
: opção de configuração para ativar ou desativar a unidade de flash no dispositivo.- Consulte o guia para desenvolvedores para mais detalhes sobre como detectar recursos de flash e ativar o modo lanterna.
As extensões do ARCore para a AR Foundation do Unity são compatíveis com a AR Foundation 5
As extensões do ARCore para a AR Foundation agora têm suporte oficial para AR Foundation 5. Ao usar a AR Foundation 5 (a versão verificada nas versões 2022 e 2023 do Unity), use os métodos de instalação abaixo para ter uma versão compatível das extensões do ARCore para a AR Foundation:
- Por
Add package from git url...
: usehttps://github.com/google-ar/arcore-unity-extensions.git#arf5
, - Por
Add package from tarball...
: use uma versão indicada porarf5
na página de versões.
Os projetos que permanecerem na versão 4 da AR Foundation podem usar os seguintes métodos de instalação:
- Por
Add package from git url...
: usehttps://github.com/google-ar/arcore-unity-extensions.git#arf4
, - Por
Add package from tarball...
: use uma versão indicada porarf4
na página de versões.
Para fazer upgrade do seu projeto da AR Foundation 4 para a 5, consulte o guia de migração.
Os símbolos de script personalizados,
como ARCORE_USE_ARF_5
do suporte Beta, não são mais usados.
Novidades da ARCore v1.44.0
Esta versão não tem recursos novos.
Novidades da ARCore v1.43.0
API Places na migração do Geospatial Creator
O recurso de pesquisa do Criador de conteúdo geoespacial agora usa a API New Places do Google. Para usar o recurso de pesquisa, ative a API Places (nova) no console do Google Cloud.
Novidades da ARCore v1.42.0
Ajustar a blocos no Geospatial Creator para Unity
Um botão "Ajustar ao bloco" foi adicionado ao painel do
editor ARGeospatialCreatorAnchor
. Esse botão define o valor de altitude do editor de uma âncora de terreno ou no telhado para a parte de cima de uma geometria de Bloco 3D na latitude e longitude atuais da âncora. Essa propriedade não afeta o
comportamento no momento da execução. Isso ajuda a ajustar a posição da âncora no editor para
corresponder à posição no momento da execução.
Novidades da ARCore v1.41.0
API Geospatial Creator
O Geospatial Creator para Unity agora inclui suporte para a criação e manipulação de objetos do Geospatial Creator no modo Editor. As classes e APIs recém-disponíveis estão descritas no guia da API Geospatial Creator.
Suporte a versões 5.x da AR Foundation (Beta)
As extensões do ARCore para a AR Foundation do Unity agora são compatíveis com as versões 5.x da AR Foundation. Para migrar um projeto para a AR Foundation, consulte o guia de migração.
Novidades da ARCore v1.40.0
Semântica de cena no iOS
A API Scene Semantics agora está disponível no SDK do ARCore para iOS e nas extensões do ARCore para a Fundação de RA da Unity voltadas para a plataforma iOS. A API Scene Semantics permite que os desenvolvedores entendam a cena que envolve o usuário em tempo real, marcando pixels em 11 classes de componentes externos. Consulte Introdução à semântica de cenas para mais informações.
iOS
Unity (AR Foundation)
Pesquisar pontos de interesse no Geospatial Creator para Unity
O Geospatial Creator para Unity agora oferece suporte a uma pesquisa textual para posicionar a visualização de blocos fotográficos em 3D. Consulte Pesquisar pontos de interesse no Criador geoespacial para mais informações.
Novidades da ARCore v1.39.0
Esta versão não tem recursos novos.
Novidades da ARCore v1.38.0
Esta versão não tem recursos novos.
Novidades da ARCore v1.37.0
Scene Semantics
A Scene Semantics fornece detalhes mais ricos sobre a cena ao redor, facilitando a compreensão do mundo ao redor do usuário. A API Scene Semantics executa um modelo de ML no feed de imagens da câmera e fornece uma imagem semântica com cada pixel correspondente a um dos 11 rótulos de conceitos externos.
Consulte Introdução à semântica de cena e o app de exemplo semantics_java para mais informações.
Android (Kotlin/Java)
Android NDK (C)
Unity (AR Foundation)
iOS
Consulte Novidades na ARCore v1.40.0.
Streetscape Geometry
A Streetscape Geometry é uma nova API Geospatial do ARCore que fornece a geometria de edifícios e terrenos em uma área ao redor do usuário quando a API Geospatial está ativada.
Android (Kotlin/Java)
Consulte o Guia para desenvolvedores sobre geometria da paisagem urbana (Kotlin/Java). Além disso, o app de exemplo geospatial_java foi atualizado para incluir a geometria da paisagem urbana.
Android NDK (C)
Consulte o Guia para desenvolvedores sobre geometria da paisagem urbana (C) para mais informações.
Unity (AR Foundation)
Consulte o Guia para desenvolvedores sobre geometria da paisagem urbana (Unity) para mais informações.
iOS
Consulte o Guia para desenvolvedores sobre geometria da paisagem urbana (iOS) para mais informações. Além disso, o app GeospatialExample foi atualizado para incluir a geometria da paisagem urbana.
GARStreetscapeGeometry
:GARStreetscapeGeometry.mesh
fornece malhas 3D.GARStreetscapeGeometry.meshTransform
fornece a transformação de origem da geometria em relação ao espaço mundial da sessão.- O
GARStreetscapeGeometry.trackingState
mantém o estado de rastreamento. GARStreetscapeGeometry.type
indica se é uma geometria de terreno ou de edifício.GARStreetscapeGeometry.quality
fornece a qualidade da geometria.GARStreetscapeGeometry.identifier
fornece o identificador exclusivo da geometria.GARSession.createAnchorOnStreetscapeGeometry:transform:error:
cria uma âncora no local e na orientação especificados.GARSession.raycastStreetscapeGeometry:direction:error:
executa um raycast na geometria da paisagem urbana carregada na cena.
Âncoras no teto
As âncoras de telhado são um novo tipo de âncora geoespacial que ajuda a fixar o conteúdo em um telhado.
Android (Kotlin/Java)
Consulte Âncoras geoespaciais (Java). Além disso, o app de exemplo geospatial_java foi atualizado para incluir âncoras de telhado.
Android NDK (C)
Consulte Âncoras geoespaciais (C) para mais informações.
Unity (AR Foundation)
Consulte Âncoras geoespaciais para mais informações. Além disso, o exemplo geoespacial foi atualizado para incluir âncoras no telhado.
ARAnchorManagerExtensions.ResolveAnchorOnRooftopAsync()
fornece uma âncora para objetos de jogo na cena com a latitude, a longitude, a altitude acima do telhado e a orientação especificadas.ResolveAnchorOnRooftopPromise
ResolveAnchorOnRooftopResult
iOS
Consulte Âncoras geoespaciais (iOS) para mais informações. Além disso, o app GeospatialExample foi atualizado para incluir pontos de ancoragem no telhado.
GARSession.createAnchorWithCoordinate:altitudeAboveRooftop:eastUpSouthQAnchor:completionHandler:error:
cria uma âncora no telhado no local especificado, altitude acima do telhado em metros e orientação em relação à Terra.GARCreateAnchorOnRooftopFuture
mantém o estado assíncrono da resolução de uma âncora do Rooftop.GARRooftopAnchorState
descreve o estado da resolução de uma âncora do Rooftop.
Profundidade geoespacial
Quando os modos da API Depth e da Streetscape Geometry estão ativados em uma sessão do ARCore em áreas com cobertura de VPS, as imagens de profundidade geradas são aprimoradas usando a Streetscape Geometry. A geometria da paisagem urbana é integrada a cada imagem de profundidade gerada em um alcance de 65,535 metros. Não é necessário fazer mudanças ao chamar a API Depth para aproveitar esse benefício.
Android (Kotlin/Java)
Consulte Profundidade geoespacial (Java) para mais informações.
Android NDK (C)
Consulte Profundidade geoespacial (C) para mais informações.
Unity (AR Foundation)
Consulte Profundidade geoespacial (C) para mais informações.
iOS
No momento, a Semântica de cena não está disponível para iOS.
Suporte à renderização Vulkan
O ARCore agora oferece suporte à renderização do Vulkan expondo a imagem da câmera por meio de um AHardwareBuffer
. É possível usar esse buffer de hardware vinculando-o a um VkImage
.
Consulte Como renderizar seu aplicativo ARCore usando o Vulkan e o app de exemplo hello_ar_vulkan_c para mais informações.
Android (Kotlin/Java)
Android NDK (C)
Unity (AR Foundation)
No momento, a renderização Vulkan não está disponível para o Unity usando a AR Foundation.
Estabilização eletrônica de imagem (EIS)
É possível configurar o ARCore para usar a estabilização eletrônica de imagem, que suaviza os frames da câmera para uma experiência do usuário mais fluida.
Consulte Como ativar a estabilização eletrônica de imagem e o app de exemplo hello_eis_kotlin para mais informações.
Android (Kotlin/Java)
Config.ImageStabilizationMode
Frame.transformCoordinates3d()
Session.isImageStabilizationModeSupported()
- Há um problema conhecido em que chamar
Frame.transformCoordinates3d()
com coordenadas 2D diferentes deOPENGL_NORMALIZED_DEVICE_COORDINATES
causa uma falha em vez de gerarIllegalArgumentException
. Isso será resolvido na próxima versão.
Android NDK (C)
ArImageStabilizationMode
ArFrame_transformCoordinates3d()
ArSession_isImageStabilizationModeSupported()
- Há um problema conhecido em que chamar
ArFrame_transformCoordinates3d()
com coordenadas 2D diferentes deAR_COORDINATES_2D_OPENGL_NORMALIZED_DEVICE_COORDINATES
faz com que o app seja interrompido em vez de retornarAR_ERROR_INVALID_ARGUMENT
. Isso será resolvido na próxima versão.
Unity (AR Foundation)
No momento, o EIS não está disponível para Unity usando a AR Foundation.
iOS
No momento, o EIS não está disponível para iOS.
APIs assíncronas do ARCore
Esta versão apresenta novas APIs assíncronas do ARCore para melhorar a ergonomia ao trabalhar com operações assíncronas, seguindo o paradigma Future e Promise.
Android (Kotlin/Java)
- Como resolver âncoras de terreno: use
Earth.resolveAnchorOnTerrainAsync()
para receber umResolveAnchorOnTerrainFuture
. O símbolo antigoEarth.resolveAnchorOnTerrain()
foi descontinuado e pode ser removido em uma versão mais recente do ARCore. - Resolução de âncoras do Cloud: use
Session.resolveCloudAnchorAsync()
para receber umResolveCloudAnchorFuture
. O símbolo antigoSession.resolveCloudAnchor()
foi descontinuado e pode ser removido em uma versão mais recente do ARCore. - Hospedar âncoras do Cloud: use
Session.hostCloudAnchorAsync()
para receber umHostCloudAnchorFuture
. Os símbolos antigosSession.hostCloudAnchor()
eSession.hostCloudAnchorWithTtl()
foram descontinuados e podem ser removidos em uma versão mais recente do ARCore. - Verificar a disponibilidade do APK: use
ArCoreApk.checkAvailabilityAsync()
para registrar um callback. O símbolo antigoArCoreApk.checkAvailability()
não foi descontinuado.
Android NDK (C)
- Como resolver âncoras de terreno: use
ArEarth_resolveAnchorOnTerrainAsync()
para receber umArResolveAnchorOnTerrainFuture
ou useArResolveAnchorOnTerrainCallback
. O símbolo antigoArEarth_resolveAndAcquireNewAnchorOnTerrain()
foi descontinuado e pode ser removido em uma versão mais recente do ARCore. - Resolução de âncoras do Cloud: use
ArSession_resolveCloudAnchorAsync()
para receber umArResolveCloudAnchorFuture
ou useArResolveCloudAnchorCallback
. O símbolo antigoArSession_resolveAndAcquireNewCloudAnchor()
foi descontinuado e pode ser removido em uma versão mais recente do ARCore. - Hospedagem de âncoras do Cloud: use
ArSession_hostCloudAnchorAsync()
para receber umArHostCloudAnchorFuture
ou useArHostCloudAnchorCallback
. Os símbolos antigosArSession_hostAndAcquireNewCloudAnchor()
eArSession_hostAndAcquireNewCloudAnchorWithTtl()
foram descontinuados e podem ser removidos em uma versão mais recente do ARCore. - Verificar a disponibilidade do APK: use
ArCoreApk_checkAvailabilityAsync()
para registrar um callback. O símbolo antigoArCoreApk_checkAvailability()
não foi descontinuado.
Unity (AR Foundation)
- Como resolver âncoras de terreno: use
ARAnchorManagerExtensions.ResolveAnchorOnTerrainAsync()
para receber umResolveAnchorOnTerrainPromise
. O símbolo antigoARAnchorManagerExtensions.ResolveAnchorOnTerrain()
foi descontinuado e pode ser removido em uma versão mais recente do ARCore. - Resolução de âncoras do Cloud: use
ARAnchorManagerExtensions.ResolveCloudAnchorAsync()
para receber umResolveCloudAnchorPromise
. O símbolo antigoARAnchorManagerExtensions.ResolveCloudAnchorId()
foi descontinuado e pode ser removido em uma versão mais recente do ARCore. - Hospedar âncoras do Cloud: use
ARAnchorManagerExtensions.HostCloudAnchorAsync()
para receber umHostCloudAnchorPromise
. Os símbolos antigos doARAnchorManagerExtensions.HostCloudAnchor()
foram descontinuados e podem ser removidos em uma versão mais recente do ARCore.
iOS
- Como resolver âncoras de terreno: use
GARSession.createAnchorWithCoordinate:altitudeAboveTerrain:eastUpSouthQAnchor:completionHandler:error:
para receber umGARCreateAnchorOnTerrainFuture
. O símbolo antigoGARSession.createAnchorWithCoordinate:altitudeAboveTerrain:eastUpSouthQAnchor:error:
foi descontinuado e pode ser removido em uma versão mais recente do ARCore. - Resolução de âncoras do Cloud: use
GARSession.resolveCloudAnchorWithIdentifier:completionHandler:error:
para receber umGARResolveCloudAnchorFuture
. O símbolo antigoGARSession.resolveCloudAnchorWithIdentifier:error:
foi descontinuado e pode ser removido em uma versão mais recente do ARCore. - Hospedar âncoras do Cloud: use
GARSession.hostCloudAnchor:TTLDays:completionHandler:error:
para receber umaGARHostCloudAnchorFuture
. Os símbolos antigosGARSession.hostCloudAnchor:error:
eGARSession.hostCloudAnchor:TTLDays:error:
foram descontinuados e podem ser removidos em uma versão mais recente do ARCore.
Novidades da ARCore v1.36.0
Suporte ao Gerenciador de pacotes do Swift no iOS
O SDK do ARCore para iOS agora tem suporte oficial ao Gerenciador de pacotes do Swift. Consulte Ativar a RA no seu app iOS para instruções sobre como fazer a integração com o ARCore usando o Swift Package Manager.
Novidades na ARCore v1.35.0
A precisão da pose geoespacial substitui a direção por guinada
Todas as posições geoespaciais agora expõem a precisão de orientação da rotação de guinada, substituindo a precisão de direção.
- Java/Kotlin: substitua
GeospatialPose.getHeading()
porGeospatialPose.getEastUpSouthQuaternion()
eGeospatialPose.getHeadingAccuracy()
porGeospatialPose.getOrientationYawAccuracy()
. - C: Substituir
ArGeospatialPose_getHeading()
porArGeospatialPose_getEastUpSouthQuaternion()
eArGeospatialPose_getHeadingAccuracy()
porArGeospatialPose_getOrientationYawAccuracy()
. - iOS: substitua
GARGeospatialTransform.heading
porGARGeospatialTransform.eastUpSouthQTarget
eGARGeospatialTransform.headingAccuracy
porGARGeospatialTransform.orientationYawAccuracy
. - Unity: substitua
GeospatialPose.Heading
porGeospatialPose.EunRotation
eGeospatialPose.HeadingAccuracy
porGeospatialPose.OrientationYawAccuracy
.
Outras mudanças e atualizações
Confira as notas da versão para ver outras mudanças, correções de bugs e melhorias de desempenho:
- Observações da versão do SDK do ARCore para Android
- Notas da versão do ARCore para Android NDK
- Notas da versão do SDK do ARCore para iOS
- Observações da versão das extensões do ARCore para a AR Foundation
Novidades da ARCore v1.34.0
Verificar se os recursos geoespaciais estão disponíveis no local atual do dispositivo
A API Geospatial agora pode verificar a disponibilidade do sistema de posicionamento visual (VPS, na sigla em inglês) em uma posição horizontal especificada no momento da execução. Essa API pode ser usada sem uma sessão de RA ativa: por exemplo, para mostrar um botão "Entrar na RA" somente quando o VPS estiver disponível.
- Java/Kotlin:
Session.checkVpsAvailabilityAsync()
- C:
ArSession_checkVpsAvailabilityAsync()
- iOS:
GARSession.checkVPSAvailabilityAtCoordinate:completionHandler:
- Unity (AR Foundation):
AREarthManager.CheckVpsAvailability()
Orientação da pose geoespacial
As poses geoespaciais agora expõem a orientação no espaço 3D.
- Java/Kotlin:
feedbackGeospatialPose.getEastUpSouthQuaternion()
- C:
ArEarth_getGeospatialPose()
- iOS:
GARGeospatialTransform.eastUpSouthQTarget
- Unity:
GeospatialPose.EunRotation()
Conversões de pose geoespacial
As poses geoespaciais agora podem ser convertidas em poses do mundo real (AR) e vice-versa.
Para extrair a pose geoespacial de uma pose de RA:
- Java/Kotlin:
Earth.getGeospatialPose()
- C:
ArEarth_getGeospatialPose()
- iOS:
GARSession.geospatialTransformFromTransform:error:
- Unity:
AREarthManager.Convert(Pose)
Para extrair a pose de RA de uma pose geoespacial:
- Java/Kotlin:
Earth.getPose()
- C:
ArEarth_getPose()
- iOS:
GARSession.transformFromGeospatialCoordinate:altitude:eastUpSouthQTarget:error:
- Unity:
AREarthManager.Convert(GeospatialPose)
As posições geoespaciais obtidas com essas funções têm um valor de direção definido como zero. Em vez disso, use o seguinte:
- Android (Java/Kotlin/C): o quatérnion EUS da pose
- iOS:
eastUpSouthQTarget
da pose - Unity: a
EunRotation
da pose
Outras mudanças e atualizações
Confira as notas da versão para ver outras mudanças, correções de bugs e melhorias de desempenho:
- Observações da versão do SDK do ARCore para Android
- Notas da versão do ARCore para Android NDK
- Notas da versão do SDK do ARCore para iOS
- Observações da versão das extensões do ARCore para a AR Foundation
Novidades da ARCore v1.33.0
Novo endpoint de Âncoras do Cloud
- Para usar o Cloud Anchors, é necessário ativar a API ARCore em vez da API ARCore Cloud Anchor, que foi descontinuada. Para oferecer suporte a versões mais antigas do app, ative as duas opções durante a transição. Os apps criados com o SDK do ARCore 1.32.0 e versões anteriores vão ser destinados à API mais antiga, enquanto os apps criados com o SDK do ARCore 1.33.0 e versões mais recentes vão ser destinados à nova API. Observações:
- A nova API usa o nome de domínio
arcore.googleapis.com
em vez dearcorecloudanchor.googleapis.com
. - Se você estiver usando uma chave de API restrita por API, será necessário permitir a API ARCore.
- Se você enviar solicitações para a API ARCore Cloud Anchor Management do seu back-end, também precisará mudar o nome de domínio para
arcore.googleapis.com
depois de ativar a API ARCore. - A API/endpoint antiga vai continuar sendo compatível até agosto de 2023.
- Consulte as mudanças no endpoint do Cloud Anchor do ARCore 1.33 para mais detalhes.
- A nova API usa o nome de domínio
Âncoras de terreno
- A API Geospatial Terrain anchor cria uma âncora em uma posição horizontal e altitude especificadas em relação ao terreno da posição horizontal.
Outras mudanças e atualizações
Confira as notas da versão para ver outras mudanças, correções de bugs e melhorias de desempenho:
- Observações da versão do SDK do ARCore para Android
- Notas da versão do ARCore para Android NDK
- Notas da versão do SDK do ARCore para iOS
- Observações da versão das extensões do ARCore para a AR Foundation
Novidades da ARCore v1.32.0
Esta versão não tem recursos novos.
Android e Unity (AR Foundation) para Android
- A
targetSdkVersion
do ARCore foi atualizada para o nível 32 da API do Android. Se o app não especificar umtargetSdkVersion
, otargetSdkVersion
do app vai se tornar 32 devido à fusão de manifestos.- SDK do Android: especificar um
targetSdkVersion
nobuild.gradle
ouAndroidManifest.xml
do projeto vai substituir o valortargetSdkVersion
do ARCore. - AR Foundation para Android: especificar um Nível da API de destino em Project Settings > Player > Android > Other Settings do projeto do Unity vai substituir o valor
targetSdkVersion
do ARCore.
- SDK do Android: especificar um
Outras mudanças e atualizações
Confira as notas da versão para ver outras mudanças, correções de bugs e melhorias de desempenho:
- Observações da versão do SDK do ARCore para Android
- Notas da versão do ARCore para Android NDK
- Notas da versão do SDK do ARCore para iOS
- Observações da versão das extensões do ARCore para a AR Foundation
Novidades da ARCore v1.31.0
API Geospatial do ARCore
A nova API Geospatial do ARCore usa dados de modelos 3D do Google Earth e dados de imagens do Street View do Google Maps para permitir que seu app ofereça experiências imersivas de realidade aumentada com base em localização em escala global.
Consulte a Introdução à API Geospatial do ARCore para conferir a documentação específica para desenvolvedores e começar a usar a nova API Geospatial.
Profundidade de longo alcance
A API Depth do ARCore agora está otimizada para incluir a detecção de profundidade de maior alcance, aumentando o alcance das observações de profundidade que podem ser representadas. Todos os 16 bits da imagem de profundidade são usados, fornecendo um alcance máximo de 65.535 milímetros. Antes, apenas 13 bits eram preenchidos, com um limite de 8.191 milímetros.
Consulte as Mudanças na API Depth para conferir a documentação para desenvolvedores específica da plataforma e entender as mudanças na API Depth.
Observações específicas da plataforma
Android
Novas APIs geoespaciais do ARCore
Java
Earth
oferece capacidade de localização em coordenadas relativas à Terra.Earth.createAnchor()
cria um novoAnchor
no local e na orientação especificados em relação à Terra.
Earth.Earthstate
descreve o estado atual deEarth
, incluindo oTrackingState
.GeospatialPose
descreve um local, uma elevação e uma direção da bússola específicos em relação à Terra.
C
ArEarth
oferece a capacidade de localização em coordenadas relativas à Terra.ArEarth_acquireNewAnchor()
cria um novoAnchor
no local e na orientação especificados em relação à Terra.ArEarthState
descreve o estado atual deArEarth
, incluindo oArTrackingState
.
ArGeospatialPose
descreve um local, uma elevação e uma direção da bússola específicos em relação à Terra.
APIs Depth do ARCore atualizadas
Java
- As chamadas de função da API Depth foram alteradas:
Frame.acquireDepthImage
comoFrame.acquireDepthImage16Bits
.Frame.acquireRawDepthImage
comoFrame.acquireRawDepthImage16Bits
.- Os formatos de imagem de saída das duas chamadas mudaram de
android.graphics.ImageFormat#DEPTH16
paraandroid.hardware.HardwareBuffer#D_16
. - A profundidade ainda é representada como um número inteiro de 16 bits em unidades de milímetros, mas agora todos os 16 bits são usados para representar a profundidade, permitindo que um intervalo máximo expresso vá de 8191 mm a 65.535 mm.
- As chamadas de função da API Depth
Frame.acquireDepthImage
eFrame.acquireRawDepthImage
foram descontinuadas. UseFrame.acquireDepthImage16Bits
eFrame.acquireRawDepthImage16Bits
em vez disso.
- As chamadas de função da API Depth foram alteradas:
C
- As chamadas de função da API Depth foram alteradas:
ArFrame_acquireDepthImage
comoArFrame_acquireDepthImage16Bits
.ArFrame_acquireRawDepthImage
aArFrame_acquireRawDepthImage16Bits
- Os formatos de imagem de saída das duas chamadas mudaram de
AR_IMAGE_FORMAT_DEPTH16
paraAR_IMAGE_FORMAT_D_16
. - A profundidade ainda é representada como um número inteiro de 16 bits em unidades de milímetros, mas agora todos os 16 bits são usados para representar a profundidade, permitindo que um intervalo máximo expresso vá de 8191 mm a 65.535 mm.
- As chamadas de função da API Depth
ArFrame_acquireDepthImage
eArFrame_acquireRawDepthImage
foram descontinuadas. UseArFrame_acquireDepthImage16Bits
eArFrame_acquireRawDepthImage16Bits
.
- As chamadas de função da API Depth foram alteradas:
Unity (AR Foundation)
Novas APIs Geospatial do ARCore:
AREarthManager
oferece a capacidade de localização em coordenadas relativas à Terra.EarthTrackingState
recebe o estado de rastreamento do Google Earth para o frame mais recente.EarthState
mantém as condições de erro do Google Earth.
GeospatialPose
descreve um local, uma elevação e uma direção de bússola específicos em relação à Terra.ARGeospatialAnchor
fornece uma âncora para objetos de jogo na cena, especificada em um local e orientação em relação à Terra.
iOS
Novas APIs Geospatial do ARCore:
GAREarth
Fornece a localização relativa à Terra.GAREarthState.earthState
gerencia estados e condições de erro.GAREarthState.trackingState
mantém o estado de rastreamento, necessário para dados geoespaciais.
GARGeospatialTransform
Uma representação de uma transformação global, incluindo local, direção, altitude e estimativas de precisão.GARSession.createAnchorWithCoordinate:altitude:eastUpSouthQAnchor:error:
Cria uma âncora geoespacial no local e na orientação especificados em relação à Terra.
Outras mudanças
Confira as notas da versão para ver outras mudanças, correções de bugs e melhorias de desempenho:
- Observações da versão do SDK do ARCore para Android
- Notas da versão do ARCore para Android NDK
- Notas da versão do SDK do ARCore para iOS
- Observações da versão das extensões do ARCore para a AR Foundation
Novidades da ARCore v1.30.0
Esta versão não tem recursos novos.
Android
- Os valores de retorno de APIs com anotações com
@NonNull
e@Nullable
. - Atualizamos as versões da ferramenta de build usadas para criar amostras: Gradle para 7.0.2 e o Plug-in do Android para Gradle para 7.0.4. O upgrade dessas ferramentas não é necessário para aplicativos ARCore existentes. Para conferir novos recursos, problemas conhecidos e informações de incompatibilidade, consulte a documentação do Android sobre o Plug-in do Android para Gradle.
Unity (AR Foundation)
Foi adicionada uma nova versão do
arcore-unity-extensions-without-edm4u.tgz
. Essa variante de lançamento não agrupa dependências externas, como o External Dependency Manager para Unity e permite upgrades para o EDM. O uso dessa versão lite pode resolver incompatibilidades ao usar as bibliotecas do Firebase. Consulte instruções de instalação das extensões do ARCore para a AR Foundation para começar.O ExternalDependencyManager foi atualizado para a v1.2.168 para oferecer suporte melhor à versão 2021.2 e mais recentes. Confira detalhes no registro de alterações do EDM.
Correção de um problema em que a sessão do ARCore configurava todos os frames, mesmo que não houvesse mudança na configuração da sessão, o que causava a queda de QPS.
iOS
- Várias correções de bugs e melhorias no desempenho.
Novidades da ARCore v1.29.0
Esta versão não tem recursos novos.
Android
- hello_ar_java e hello_ar_kotlin: a cor de um objeto foi alterada quando ele é colocado usando
SCREENSPACE_WITH_APPROXIMATE_DISTANCE
para distinguir melhor os objetos colocados usando Posição instantânea. - persistent_cloud_anchor_java: foi adicionada uma dependência de build ausente ao exemplo. Correção de um bug em que a hospedagem de qualquer âncora tinha o estado
CloudAnchorState ERROR_NOT_AUTHORIZED
, mesmo que o projeto estivesse configurado corretamente.
Unity (AR Foundation)
- O pacote de extensões do ARCore agora depende do Plug-in do ARKit XR para garantir que a versão instalada do AR Foundation seja compatível com a versão do Plug-in do ARKit XR. Isso corrige um erro de compilação ao instalar extensões do ARCore no Unity 2019.x e ativar o plug-in ARKit XR.
- As configurações do projeto das Extensões ARCore foram movidas de Project Settings > XR > ARCore Extensions para Project Settings > XR Plug-in Management > ARCore Extensions.
ARCoreExtensionsConfig
,ARCoreExtensionsCameraConfigFilter
eARCoreRecordingConfig
foram movidos de Create > XR > ARCore Extensions para o menu Create > XR.
iOS
- Várias correções de bugs e melhorias no desempenho.
Notas da versão completas
- Observações completas da versão do SDK do ARCore para Android
- Notas da versão completa do ARCore para NDK do Android
- Notas da versão completas do SDK do ARCore para iOS
- Observações da versão das extensões do ARCore para a AR Foundation
Novidades da ARCore v1.28.0
- A partir de novembro de 2022, os apps com RA não poderão mais adquirir imagens ou metadados do NDK. As versões do SDK afetadas dependem da função específica que está sendo chamada. Consulte o aviso de descontinuação para saber mais.
- C: as chamadas para
ArImage_getNdkImage()
eArImage_getNdkCameraMetadata()
sempre retornamnullptr
para os objetosAImage
eACameraMetadata
. - Java: o objeto
Image
retornado porFrame#acquireCameraImage()
será do tamanho0
x0
pixels. As chamadas paraFrame#getImageMetadata()
sempre vão gerar umaIllegalArgumentException
. - Unity (AR Foundation): ao usar a AR Foundation 2.1 (Unity 2019 LTS), as chamadas para
XRCameraSubsystem.TryGetLatestImage(out XRCameraImage)
sempre retornamfalse
. A AR Foundation 4.x e versões mais recentes não são afetadas, e as chamadas paraXRCameraSubsystem.TryGetLatestImage(out XRCameraImage)
vão funcionar normalmente. - SDK do ARCore para Unity (descontinuado): as chamadas para
Frame.CameraImage.AcquireCameraImageBytes()
terão o tamanho de0
x0
pixels. As chamadas paraFrame.CameraMetadata.GetAllCameraMetadataTags()
vão retornar umList<CameraMetadataTag>
vazio.
- C: as chamadas para
- Java:
ArImage#getCropRect()
agora retorna um retângulo de corte de tamanho completo, ou seja, todos os pixels na imagem são válidos. Consulteandroid.media.Image#getCropRect()
para mais informações.
Novidades da ARCore v1.27.0
Esta versão não tem recursos novos. Consulte as notas da versão a seguir para conferir várias correções de bugs e melhorias de performance.
- Observações completas da versão do SDK do ARCore para Android
- Notas da versão completa do ARCore para NDK do Android
- Notas da versão completas do SDK do ARCore para iOS
- Observações da versão das extensões do ARCore para a AR Foundation
Além de várias correções de bugs, esta versão incluiu o seguinte:
Exemplos de apps em Kotlin
Adição de hello_ar_kotlin para demonstrar as práticas recomendadas ao usar o Kotlin.
Consulte o Guia de início rápido para Android para mais informações.
Adição de ml_kotlin para demonstrar como um modelo de classificação de imagem pode ser usado com o ARCore.
Consulte Usar o ARCore como entrada para modelos de aprendizado de máquina para mais informações.
Novidades da ARCore v1.26.0
Esta versão inclui as seguintes mudanças importantes:
- Os URIs agora são aceitos para conjuntos de dados em Gravação e reprodução.
Outras mudanças e atualizações
Consulte as notas de lançamento a seguir para ver outras correções de bugs e outras mudanças interruptivas.
- Observações completas da versão do SDK do ARCore para Android
- Notas da versão completa do ARCore para NDK do Android
- Notas da versão completas do SDK do ARCore para iOS
- Observações da versão das extensões do ARCore para a AR Foundation
Novidades da ARCore v1.25.0
Esta versão não tem recursos novos. Consulte as notas da versão a seguir para conferir várias correções de bugs e melhorias de performance.
- Observações completas da versão do SDK do ARCore para Android
- Notas da versão completa do ARCore para NDK do Android
- Notas da versão completas do SDK do ARCore para iOS
- Notas da versão completa do SDK do ARCore para Unity
- Observações da versão das extensões do ARCore para a AR Foundation
Novidades da ARCore v1.24.0
Esta versão inclui as seguintes mudanças importantes:
- Uma nova API Raw Depth que fornece uma imagem de profundidade sem filtrar o espaço da imagem
- Recurso de gravação de faixa de dados personalizados na API Recording &Playback
- Capacidade de realizar testes de acerto de profundidade
Profundidade bruta
A API Raw Depth fornece dados de profundidade para uma imagem da câmera com maior precisão do que os dados completos da API Depth, mas nem sempre abrange todos os pixels. As imagens de profundidade brutas, junto com as imagens de confiança correspondentes, também podem ser processadas, permitindo que os apps usem apenas os dados de profundidade com precisão suficiente para o caso de uso individual.
Guias para desenvolvedores:
- Android (Java/Kotlin)
- Android NDK (C)
- Extensões do ARCore para a AR Foundation
- SDK do ARCore para Unity
Gravação de faixas personalizadas
O novo recurso de rastreamento de dados personalizados na API Recording &Playback permite adicionar dados personalizados a um frame do ARCore durante a gravação e extrair esses mesmos dados do frame durante a reprodução.
Guias para desenvolvedores:
- Android (Java/Kotlin)
- Android NDK (C)
- Extensões do ARCore para a AR Foundation
- SDK do ARCore para Unity
Testes de hit de profundidade
Antes, os testes de acerto só podiam ser realizados em planos detectados, limitando os locais a superfícies grandes e planas. Os testes de acerto de profundidade aproveitam as informações de profundidade suave e bruta para fornecer resultados de acerto mais precisos, mesmo em superfícies não planas e com pouca textura.
Guias para desenvolvedores:
Outras mudanças e atualizações
Consulte as notas de lançamento a seguir para ver outras correções de bugs e outras mudanças interruptivas.
- Observações completas da versão do SDK do ARCore para Android
- Notas da versão completa do ARCore para NDK do Android
- Notas da versão completas do SDK do ARCore para iOS
- Notas da versão completa do SDK do ARCore para Unity
- Observações da versão das extensões do ARCore para a AR Foundation
Novidades da ARCore v1.23.0
Suporte pendente para câmera dupla
O suporte para câmera dupla será lançado nas próximas semanas. Consulte a página dispositivos compatíveis para mais informações.
Novas ferramentas de depuração
Ao enviar uma intent de transmissão, os desenvolvedores podem ativar:
Registro de chamadas da API ARCore no registro de depuração do Android
A sobreposição de desempenho do ARCore
Hospedar e resolver âncoras da nuvem
Apps com suporte a RA criados usando o SDK do ARCore 1.11.0 ou anterior não podem mais hospedar ou resolver âncoras do Cloud.
C: Os Cloud Anchors retornados por
ArSession_hostAndAcquireNewCloudAnchor
eArSession_resolveAndAcquireNewCloudAnchor
sempre terão o estadoAR_CLOUD_ANCHOR_STATE_ERROR_INTERNAL
.Java: as âncoras do Cloud retornadas por
Session.hostCloudAnchor(Anchor)
eSession.resolveCloudAnchor(String)
sempre terão o estadoAnchor.CloudAnchorState.ERROR_INTERNAL
.Unity: as Cloud Anchors retornadas por
XPSession.CreateCloudAnchor(Anchor)
eXPSession.ResolveCloudAnchor(string)
sempre terão o estadoCloudServiceResponse.ErrorInternal
.
Os apps criados com o SDK do ARCore 1.12.0 ou mais recente não são afetados. O uso da API ARCore Cloud Anchor é coberto pela política de descontinuação.
Outras mudanças e atualizações
Consulte as notas da versão a seguir para ver outras correções de bugs e outras mudanças importantes.
Observações completas da versão do SDK do ARCore para Android
Observações da versão das extensões do ARCore para a AR Foundation
Novidades da ARCore v1.22.0
Esta versão adiciona novas APIs de gravação e reprodução e APIs de filtro de configuração da câmera para extensões ARCore para a Fundação AR. Consulte as Notas da versão completas das extensões do ARCore para saber mais.
Outras mudanças e atualizações
Consulte as notas da versão a seguir para ver outras correções de bugs e outras mudanças importantes.
Observações completas da versão do SDK do ARCore para Android
Observações da versão das extensões do ARCore para a AR Foundation
Novidades da ARCore v1.21.0
Esta versão adiciona novas APIs de gravação e reprodução para Android, Android NDK e Unity.
Gravação e reprodução
Com as APIs Recording e Playback, é possível gravar dados de vídeo e RA uma vez em um determinado ambiente e usar esse conteúdo para substituir uma sessão de câmera ao vivo para fins de teste. O ARCore salva as sessões gravadas em arquivos MP4 que contêm várias faixas de vídeo e outros dados diversos no dispositivo. Em seguida, você pode apontar o app para usar esses dados em vez de uma sessão de câmera ao vivo. Isso permite que você reproduza esse conteúdo indefinidamente para testar diferentes efeitos de RA sem precisar retornar ao campo.
Para mais detalhes:
Java:
C:
Unity:
Novidades da ARCore v1.20.0
Esta versão inclui as seguintes mudanças importantes:
Novo suporte para âncoras do Cloud permanentes.
Atualizamos os recursos de metadados de imagem para Android e Android NDK.
Novo orientação que exige a versão 5.6.4 ou mais recente do Gradle para oferecer suporte às extensões do ARCore para a AR Foundation ou ao SDK do ARCore para Unity (1.19 ou mais recente) com o Unity 2018.4 ou mais recente.
Novo suporte para âncoras do Cloud permanentes
Antes da ARCore v1.20, o Cloud Anchors só podia ser resolvido por até 24 horas após a hospedagem. Com as âncoras da nuvem persistentes, agora é possível criar uma âncora da nuvem com um tempo de vida (TTL) entre um e 365 dias. Também é possível estender a vida útil da âncora depois que ela já está hospedada usando a API Cloud Anchor Management.
O uso de Âncoras do Cloud permanentes é coberto pela nova política de descontinuação das Âncoras do Cloud.
C: Guia para desenvolvedores,
ArSession_hostAndAcquireNewCloudAnchorWithTtl
eArSession_estimateFeatureMapQualityForHosting
.Java: Guia do desenvolvedor,
hostCloudAnchorWithTtl
eestimateFeatureMapQualityForHosting
.iOS: Guia para desenvolvedores,
hostCloudAnchor:TTLDays:error:
eestimateFeatureMapQualityForHosting:
.Extensões do ARCore para a AR Foundation: guia para desenvolvedores Android, guia para desenvolvedores iOS,
ARAnchorManager.HostCloudAnchor(ARAnchor, int)
,ARAnchorManager.SetAuthToken(string)
eARAnchorManager.EstimateFeatureMapQualityForHosting(Pose)
.Unity com direcionamento para Android: Guia para desenvolvedores,
XPSession.CreateCloudAnchor(Anchor, int)
eXPSession.EstimateFeatureMapQualityForHosting(Pose)
.Unity com segmentação para iOS: guia para desenvolvedores,
XPSession.SetAuthToken(string)
eXPSession.CreateCloudAnchor(UnityARUserAnchorComponent, int)
.
Outras mudanças e atualizações
Consulte as notas da versão a seguir para ver outras correções de bugs e outras mudanças importantes.
Observações completas da versão do SDK do ARCore para Android
Observações da versão das extensões do ARCore para a AR Foundation
Novidades da ARCore v1.19.0
Esta versão inclui as seguintes mudanças importantes:
- Nova API Instant Placement para Android, Android NDK e Unity.
- Novas orientações para criar para o Android 11 com o Unity.
Posicionamento instantâneo
A API Instant Placement permite que o usuário coloque um objeto de RA na tela sem precisar esperar que o ARCore detecte a geometria da superfície. A posição do objeto é refinada em tempo real à medida que o usuário se move pelo ambiente. Quando o ARCore detecta a pose correta na região em que o objeto de RA é colocado, o objeto branco é atualizado automaticamente para ser preciso e se torna opaco.
O clipe a seguir mostra uma figura virtual do Android em uma mesa real. A figura é branca e muito menor quando colocada pela primeira vez. Depois que o ARCore refina os cálculos das dimensões da cena, a figura pula para uma posição mais precisa. Isso pode resultar em uma diferença no "tamanho" percebido do objeto.
Para mais detalhes:
Android:
Android NDK:
Unity:
Novidades da ARCore v1.18.0
Esta versão inclui as seguintes mudanças importantes:
- Nova API Depth para Android, Android NDK e Unity.
- Nova orientação para criar recursos de rostos aumentados e importá-los para o Android Studio.
- A API Depth terá suporte no
4.1.0-preview.2
paraAR Foundation
eARCore XR Plugin
.
API Depth
Em dispositivos com suporte à profundidade, a API Depth usa a câmera RGB do dispositivo com suporte ao ARCore ou o sensor de profundidade ativo, se disponível, para criar mapas de profundidade. Em seguida, use a profundidade por pixel fornecida por um mapa de profundidade para que os objetos virtuais apareçam com precisão em frente ou atrás de objetos do mundo real, possibilitando experiências do usuário imersivas e realistas.
Por exemplo, as imagens a seguir mostram uma figura virtual do Android em um espaço real que contém um porta-malas ao lado de uma porta. A API Depth oculta corretamente a figura atrás da borda do tronco.
Para mais detalhes:
Android:
Android NDK:
Unity:
Novidades da ARCore v1.17.0
Destaques no SDK do ARCore para Android
Foram adicionados novos métodos que permitem o buffer de vários frames da câmera. Junto com outras técnicas, como renderização multithread, isso pode ser usado para diminuir a variabilidade nas taxas de frames.
Adição de uso de sensor de profundidade e getters de FPS de destino ausentes:
Consulte também as notas da versão completas do SDK do Android para Android.
Novidades no SDK do ARCore para Unity
- Adição de suporte à renderização com vários threads no Unity versão 2018.2 ou mais recente, que, na maioria dos casos, melhora a performance e pode ajudar a diminuir a variabilidade nas taxas de frames. Essa é uma configuração de projeto do Unity, localizada em Project Settings > Player > Android > Other Settings > Multithreaded Rendering. Consulte o guia para desenvolvedores para saber mais.
- Adição de
SessionStatus.ErrorCameraNotAvailable
eSessionStatus.ErrorIllegalState
para indicar estados de erro específicos da sessão do ARCore.
Consulte também as notas da versão completas do SDK do ARCore para Unity.
Destaques no SDK do ARCore para iOS
O tamanho binário do SDK do Cloud Anchors foi significativamente reduzido.
Agora, o Bitcode é compatível com o recurso Rostos aumentados.
Consulte também as notas da versão completas do SDK do ARCore para iOS.
Novidades da ARCore v1.16.0
Destaques no SDK do ARCore para Android e no SDK do Sceneform para Android
Esta versão inclui as seguintes mudanças importantes:
- A maioria dos dispositivos agora retorna outras configurações de câmera com suporte e resoluções
de textura de GPU mais baixas do que a resolução padrão do dispositivo.
Consulte Dispositivos com suporte do ARCore para mais detalhes.
Essas resoluções de GPU expandidas estão disponíveis na API
getSupportedCameraConfigs(CameraConfigFilter)
.
Consulte também:
Destaques nas extensões do ARCore para a AR Foundation
Esta versão inclui as seguintes mudanças importantes:
O
XRCameraConfiguration
da AR Foundation é estendido com métodos que permitem escolher a configuração de câmera adequada com base nos critérios que você quer. Esses métodos incluem GetTextureDimensions(), GetFPSRange() e GetDepthSensorUsages(). Leia as instruções detalhadas.A Unity 2019.3.0f6 agora é a versão mínima recomendada para extensões do ARCore. A AR Foundation 3.1.0-preview.6 requer a versão 2019.3 ou mais recente do Unity.
Agora, o Unity usa os termos Anchor, Cloud Anchor e Cloud Anchor ID na API de RA multiplataforma. A documentação das extensões do ARCore foi atualizada para refletir isso.
Consulte também:
Novidades no SDK do ARCore para Unity
Esta versão inclui a seguinte mudança importante:
- A maioria dos dispositivos agora retorna outras configurações de câmera com suporte e resoluções de textura de GPU mais baixas do que a resolução padrão do dispositivo. Consulte os dispositivos compatíveis com o ARCore para mais detalhes. Essas resoluções de GPU expandidas estão disponíveis pela API ARCoreCameraConfigFilter.
Consulte também:
Notas da versão completa do SDK do ARCore para Unity
Novidades da ARCore v1.15.0
Destaques nas extensões do ARCore para a AR Foundation
Esta versão inclui as seguintes mudanças importantes.
Adicionamos um exemplo de CloudAnchors que mostra como criar experiências de RA compartilhadas para Android e iOS. Confira as instruções para Android ou iOS.
A Unity 2019.2.17f1 agora é a versão mínima recomendada para uso com extensões do ARCore.
Notas da versão completas das Extensões do ARCore
Novidades no SDK do ARCore para Unity
Esta versão tem os seguintes problemas conhecidos.
A visualização instantânea pode congelar o Unity ao usar o Android 9 e um cabo USB 3. Para corrigir, atualize para o Android 10 ou use um cabo USB 2.
A visualização instantânea pode não aparecer no dispositivo quando a resolução da visualização do jogo do Unity é muito alta. Para corrigir, reduza a resolução da visualização do jogo do Unity no editor.
Notas da versão completa do SDK do ARCore para Unity
Alterações adicionais
Consulte as notas da versão a seguir para ver outras correções de bugs e outras mudanças importantes.
Novidades da ARCore v1.14.0
Esta versão inclui as seguintes mudanças importantes.
Quando um app perde temporariamente a câmera para outro app no dispositivo, o motivo do erro de rastreamento agora é mais específico:
Android:
TrackingFailureReason
éCAMERA_UNAVAILABLE
em vez deNONE
.Android NDK:
ArTrackingFailureReasons
éAR_TRACKING_FAILURE_REASON_CAMERA_UNAVAILABLE
em vez deAR_TRACKING_FAILURE_REASON_NONE
.Unity:
Session.LostTrackingReason
éLostTrackingReason.CameraUnavailable
em vez deNone
.
O Google coleciona e processa dados do seu uso do pacote de extensões do ARCore de acordo com a Política de Privacidade do Google e os Termos de Serviço das APIs do Google. É possível desativar essa opção.
Novidades da ARCore v1.13.0
Esta versão inclui as seguintes mudanças importantes.
Suporte para o uso de extensões do ARCore para a AR Foundation do Unity para criar apps iOS com Cloud Anchors.
Suporte para estimativa de iluminação HDR ambiental no Sceneform.
Consulte as notas da versão a seguir para ver outras correções de bugs e outras mudanças importantes.
Novidades da ARCore v1.12.0
Esta versão inclui as seguintes mudanças:
Adição do recurso de rostos aumentados ao iOS. Para mais informações, consulte esta visão geral, o guia de início rápido e o guia para desenvolvedores.
Suporte para o uso de extensões do ARCore para a Fundação de RA do Unity para criar apps Android com âncoras do Cloud.
As seguintes mudanças foram feitas nas âncoras do Cloud:
- Para obedecer aos nossos requisitos de privacidade atualizados para o uso do SDK do ARCore 1.12 ou mais recente, você precisa divulgar o uso de âncoras do Cloud no seu app, incluindo o texto a seguir, além de um link para saber mais, em uma tela de aviso: "Para oferecer esta sessão, o Google vai processar dados visuais da sua câmera". Para fazer isso, implemente o fluxo de aviso ao usuário recomendado disponível nos nossos apps de exemplo de âncoras do Cloud.
Para mais detalhes, consulte os Requisitos de privacidade do usuário.
Para mais detalhes sobre as ancoragens do Cloud:
Android:
Android NDK:
iOS:
Unity:
Extensões do ARCore:
Novidades da ARCore v1.11.0
Esta versão inclui as seguintes mudanças:
O serviço ARCore foi renomeado para Google Play Services para RA. Em dispositivos Google Play, ele agora é distribuído como parte do Google Play Services.
As configurações de câmera do ARCore têm como alvo 60 fps em dispositivos compatíveis e priorizam o uso do sensor de profundidade em dispositivos que têm um. É possível usar novos filtros de configuração de câmera para limitar a taxa de frames de captura da câmera a 30 fps, impedir que o ARCore use um sensor de profundidade ou filtrar com base nas duas opções.
Para mais detalhes sobre as configurações da câmera:
Android:
Android NDK:
Unity:
Novidades da ARCore v1.10.0
Esta versão adiciona novos recursos de estimativa de iluminação HDR de ambiente à API Lighting Estimation para Android, Android NDK e Unity.
Essas APIs usam aprendizado de máquina para analisar a imagem da câmera de entrada e estimar a iluminação do ambiente. É possível usar esses dados de estimativa de iluminação para renderizar uma iluminação extremamente realista, incluindo uma luz direcional principal, sombras, iluminação ambiente, destaques especulares e reflexos em objetos virtuais. O resultado é um conteúdo virtual que parece mais realista.
Para mais detalhes:
Android:
Android NDK:
Unity:
Novidades da ARCore v1.9.0
Novidades no SDK do ARCore para Android
Nesta versão, adicionamos estas APIs e recursos:
O Visualizador de cena é um visualizador imersivo que permite experiências de RA no seu site. Ele permite que os usuários de dispositivos móveis Android coloquem, visualizem e interajam com modelos 3D hospedados na Web no ambiente deles.
Novos recursos de imagens aumentadas:
O ARCore agora rastreia imagens aumentadas em movimento. Exemplos de imagens em movimento são um anúncio em um ônibus que passa ou uma imagem em um objeto plano segurado por um usuário enquanto ele move a mão.
Depois que uma imagem é detectada, o ARCore pode continuar rastreando a posição e a orientação dela, mesmo que a imagem tenha saído temporariamente da visualização da câmera.
Use
AugmentedImage#getTrackingMethod()
(Java) ouArAugmentedImage_getTrackingMethod()
(NDK) para determinar se a imagem aumentada está sendo rastreada pela câmera (FULL_TRACKING
) ou se está sendo rastreada com base na última posição conhecida (LAST_KNOWN_POSE
).
A documentação de âncoras na nuvem agora inclui uma explicação mais detalhada de como as âncoras são hospedadas e resolvidas.
Novidades no SDK do ARCore para Unity
Novos recursos de imagens aumentadas:
O ARCore agora rastreia imagens aumentadas em movimento. Exemplos de imagens em movimento podem ser um anúncio em um ônibus que passa ou uma imagem em um objeto plano segurado por um usuário enquanto ele se move.
Depois que uma imagem é detectada, o ARCore pode continuar rastreando a posição e a orientação dela, mesmo que a imagem tenha saído temporariamente da visualização da câmera.
A nova API
AugmentedImage.GetTrackingMethod()
permite que o app determine se a imagem aumentada está sendo rastreada pela câmera (FullTracking
) ou se está sendo rastreada com base na última posição conhecida (LastKnownPose
).
A documentação de âncoras na nuvem agora inclui uma explicação mais detalhada de como as âncoras são hospedadas e resolvidas.
Novidades no SDK do ARCore para iOS
Suporte para estes dispositivos:
iPad Mini de quinta geração
iPad Air de terceira geração
A documentação de âncoras na nuvem agora inclui uma explicação mais detalhada de como as âncoras são hospedadas e resolvidas.