Nouveautés et changements importants dans ARCore.
Nouveautés d'ARCore v1.50.0
Modifications apportées à targetSdkVersion
du SDK ARCore
Le targetSdkVersion
d'ARCore a été mis à jour au niveau d'API Android 36. Si votre application ne spécifie pas de targetSdkVersion
, la valeur targetSdkVersion
de votre application deviendra 36 en raison de la fusion du fichier manifeste.
Pour Unity, spécifier un niveau d'API cible dans Project Settings > Player > Android > Other Settings (Paramètres du projet > Lecteur > Android > Autres paramètres) de votre projet Unity remplacera la valeur targetSdkVersion
d'ARCore.
Nouveautés d'ARCore v1.49.0
Correction de divers bugs et amélioration des performances
Nouveautés d'ARCore v1.48.0
La compatibilité avec Unity 6 et AR Foundation 6 est entièrement disponible.
Les extensions ARCore pour AR Foundation d'Unity sont désormais compatibles avec AR Foundation 6. Utilisez les méthodes d'installation suivantes pour obtenir une version compatible d'ARCore Extensions pour AR Foundation :
- Valable jusqu'au
Add package from git url...
: utilisezhttps://github.com/google-ar/arcore-unity-extensions.git#arf6
, - Via
Add package from tarball...
: utilisez une version indiquée pararf6
sur la page des versions.
Pour mettre à niveau votre projet d'AR Foundation 5 vers AR Foundation 6, consultez le guide suivant.
Modifications destructives et comportementales
- Le SDK ne prend plus en charge les cibles de déploiement pour les versions d'iOS antérieures à 13.0
Nouveautés d'ARCore v1.47.0
Assistance bêta pour Unity 6 et AR Foundation 6
Les extensions ARCore pour AR Foundation d'Unity sont désormais compatibles en version bêta avec AR Foundation 6 pour prendre en charge Unity 6. Utilisez les méthodes d'installation suivantes pour obtenir une version compatible d'ARCore Extensions pour AR Foundation :
- Valable jusqu'au
Add package from git url...
: utilisezhttps://github.com/google-ar/arcore-unity-extensions.git#arf6
, - Via
Add package from tarball...
: utilisez une version indiquée pararf6
sur la page des versions.
Pour mettre à niveau votre projet d'AR Foundation 5 vers AR Foundation 6, consultez le guide suivant.
Correction de bugs
- Correction du plan de l'exemple d'ancrage cloud qui n'était pas transparent pour Unity 6
Autres modifications
- La branche
main
du dépôt GitHub ARCore Extensions a été remplacée par la branchearf5
.
Nouveautés d'ARCore v1.46.0
Modifications apportées à targetSdkVersion
du SDK ARCore
targetSdkVersion
d'ARCore a été mis à jour vers le niveau d'API Android 35. Si votre application ne spécifie pas de targetSdkVersion
, la valeur targetSdkVersion
de votre application deviendra 35 en raison de la fusion du fichier manifeste.
Pour Unity, spécifier un niveau d'API cible dans Project Settings > Player > Android > Other Settings (Paramètres du projet > Lecteur > Android > Autres paramètres) de votre projet Unity remplacera la valeur targetSdkVersion
d'ARCore.
Nouveautés d'ARCore v1.45.0
API Flash Mode
ARCore permet désormais d'activer le mode lampe torche de l'appareil, ce qui améliore les capacités de perception dans les environnements sombres.
Android (Kotlin/Java)
Config.FlashMode
: option de configuration permettant d'activer ou de désactiver le flash de l'appareil.- Pour savoir comment détecter les capacités du flash et activer le mode lampe torche, consultez le guide du développeur.
Android NDK (C)
ArFlashMode
: option de configuration permettant d'activer ou de désactiver le flash de l'appareil.- Pour savoir comment détecter les capacités du flash et activer le mode lampe torche, consultez le guide du développeur.
Les extensions ARCore pour AR Foundation d'Unity sont compatibles avec AR Foundation 5
Les extensions ARCore pour AR Foundation sont désormais officiellement compatibles avec AR Foundation 5. Lorsque vous utilisez AR Foundation 5 (la version validée sur les versions 2022 et 2023 d'Unity), utilisez les méthodes d'installation suivantes pour obtenir une version compatible d'ARCore Extensions pour AR Foundation :
- Valable jusqu'au
Add package from git url...
: utilisezhttps://github.com/google-ar/arcore-unity-extensions.git#arf5
, - Via
Add package from tarball...
: utilisez une version indiquée pararf5
sur la page des versions.
Les projets qui restent sur la version 4 d'AR Foundation peuvent utiliser les méthodes d'installation suivantes :
- Valable jusqu'au
Add package from git url...
: utilisezhttps://github.com/google-ar/arcore-unity-extensions.git#arf4
, - Via
Add package from tarball...
: utilisez une version indiquée pararf4
sur la page des versions.
Pour mettre à niveau votre projet d'AR Foundation 4 vers AR Foundation 5, consultez le guide de migration.
Les symboles de script personnalisé tels que ARCORE_USE_ARF_5
de la version bêta ne sont plus utilisés.
Nouveautés d'ARCore v1.44.0
Cette version ne comporte aucune nouvelle fonctionnalité.
Nouveautés d'ARCore v1.43.0
Migration de l'API Places dans Geospatial Creator
La fonctionnalité de recherche de Geospatial Creator utilise désormais la nouvelle API Places de Google. Pour utiliser la fonctionnalité de recherche, activez l'API Places (nouvelle version) dans la console Google Cloud.
Nouveautés d'ARCore v1.42.0
Aligner sur une tuile dans Geospatial Creator pour Unity
Un bouton "Aligner sur la grille" a été ajouté au panneau de l'inspecteur de l'éditeur ARGeospatialCreatorAnchor
. Ce bouton définit la valeur d'altitude réservée à l'éditeur d'un ancrage de terrain ou de toit sur le haut d'une géométrie de tuile 3D à la latitude et à la longitude actuelles de l'ancrage. Notez que cette propriété n'a aucune incidence sur le comportement lors de l'exécution. Cela permet d'ajuster la position de l'ancrage dans l'éditeur pour qu'elle corresponde à sa position lors de l'exécution.
Nouveautés d'ARCore v1.41.0
API Geospatial Creator
Geospatial Creator pour Unity permet désormais de créer et de manipuler des objets Geospatial Creator en mode Éditeur. Les nouvelles classes et API disponibles sont décrites dans le Guide de l'API Geospatial Creator.
Compatibilité avec les versions 5.x d'AR Foundation (bêta)
Les extensions ARCore pour AR Foundation d'Unity sont désormais compatibles avec les versions 5.x d'AR Foundation. Pour migrer un projet existant vers AR Foundation, consultez le guide de migration.
Nouveautés d'ARCore v1.40.0
Sémantique de scène sur iOS
L'API Scene Semantics est désormais disponible dans le SDK ARCore pour iOS, ainsi que dans les extensions ARCore pour AR Foundation d'Unity ciblant la plate-forme iOS. L'API Scene Semantics permet aux développeurs de comprendre la scène qui entoure l'utilisateur en temps réel, en classant les pixels dans 11 classes de composants extérieurs. Pour en savoir plus, consultez Présentation de la sémantique de scène.
iOS
Unity (AR Foundation)
Rechercher des points d'intérêt dans Geospatial Creator pour Unity
Geospatial Creator pour Unity est désormais compatible avec la recherche textuelle pour positionner la vue des tuiles 3D photographiques. Pour en savoir plus, consultez Rechercher des points d'intérêt dans Geospatial Creator.
Nouveautés d'ARCore v1.39.0
Cette version ne comporte aucune nouvelle fonctionnalité.
Nouveautés d'ARCore v1.38.0
Cette version ne comporte aucune nouvelle fonctionnalité.
Nouveautés d'ARCore v1.37.0
Sémantique de scène
La sémantique de scène fournit des informations plus détaillées sur la scène environnante, ce qui permet de mieux comprendre le monde qui entoure l'utilisateur. Scene Semantics exécute un modèle de ML sur le flux d'images de la caméra et fournit une image sémantique où chaque pixel correspond à l'un des 11 labels de concepts extérieurs.
Pour en savoir plus, consultez Présentation de la sémantique de scène et l'exemple d'application semantics_java.
Android (Kotlin/Java)
Android NDK (C)
Unity (AR Foundation)
iOS
Consultez Nouveautés d'ARCore v1.40.0.
Streetscape Geometry
Streetscape Geometry est une nouvelle API ARCore Geospatial qui fournit la géométrie des bâtiments et du terrain dans une zone autour de l'utilisateur lorsque l'API Geospatial est activée.
Android (Kotlin/Java)
Consultez le Guide du développeur Streetscape Geometry (Kotlin/Java). De plus, l'application exemple geospatial_java a été mise à jour pour inclure la géométrie du paysage urbain.
Android NDK (C)
Pour en savoir plus, consultez le guide du développeur pour l'API Streetscape Geometry (C++).
Unity (AR Foundation)
Pour en savoir plus, consultez le guide du développeur Streetscape Geometry (Unity).
iOS
Pour en savoir plus, consultez le guide du développeur Streetscape Geometry (iOS). De plus, l'application GeospatialExample a été mise à jour pour inclure Streetscape Geometry.
GARStreetscapeGeometry
:GARStreetscapeGeometry.mesh
fournit des maillages 3D.GARStreetscapeGeometry.meshTransform
fournit la transformation d'origine de la géométrie par rapport à l'espace mondial de la session.GARStreetscapeGeometry.trackingState
conserve l'état du suivi.GARStreetscapeGeometry.type
indique s'il s'agit d'une géométrie de terrain ou de bâtiment.GARStreetscapeGeometry.quality
indique la qualité de la géométrie.GARStreetscapeGeometry.identifier
fournit l'identifiant unique de la géométrie.GARSession.createAnchorOnStreetscapeGeometry:transform:error:
crée un ancrage à l'emplacement et à l'orientation spécifiés.GARSession.raycastStreetscapeGeometry:direction:error:
effectue un raycast sur la géométrie du paysage urbain chargée dans la scène.
Ancres de toit
Les ancres de toit sont un nouveau type d'ancres géospatiales qui vous aident à ancrer du contenu à un toit.
Android (Kotlin/Java)
Consultez Ancres géospatiales (Java). De plus, l'application exemple geospatial_java a été mise à jour pour inclure les ancres sur les toits.
Android NDK (C)
Pour en savoir plus, consultez Ancres géospatiales (C).
Unity (AR Foundation)
Pour en savoir plus, consultez Ancres géospatiales. De plus, l'exemple géospatial a été mis à jour pour inclure les ancres de toit.
ARAnchorManagerExtensions.ResolveAnchorOnRooftopAsync()
fournit un point d'ancrage pour les objets de jeu de votre scène à la latitude, la longitude, l'altitude au-dessus du toit et l'orientation spécifiées.ResolveAnchorOnRooftopPromise
ResolveAnchorOnRooftopResult
iOS
Pour en savoir plus, consultez Ancres géospatiales (iOS). De plus, l'application GeospatialExample a été mise à jour pour inclure les ancres de toit.
GARSession.createAnchorWithCoordinate:altitudeAboveRooftop:eastUpSouthQAnchor:completionHandler:error:
crée un ancrage de toit à l'emplacement spécifié, à l'altitude au-dessus du toit en mètres et à l'orientation par rapport à la Terre.GARCreateAnchorOnRooftopFuture
contient l'état asynchrone de la résolution d'une ancre Rooftop.GARRooftopAnchorState
décrit l'état de la résolution d'une ancre Rooftop.
Geospatial Depth
Lorsque les modes API Depth et Streetscape Geometry sont activés dans une session ARCore dans les zones couvertes par le VPS, les images de profondeur générées sont améliorées à l'aide de Streetscape Geometry. La géométrie du paysage urbain est intégrée à chaque image de profondeur générée jusqu'à une distance de 65,535 mètres. Aucune modification n'est nécessaire lorsque vous appelez l'API Depth pour bénéficier de cet avantage.
Android (Kotlin/Java)
Pour en savoir plus, consultez Profondeur géospatiale (Java).
Android NDK (C)
Pour en savoir plus, consultez Profondeur géospatiale (C).
Unity (AR Foundation)
Pour en savoir plus, consultez Profondeur géospatiale (C).
iOS
La sémantique de scène n'est actuellement pas disponible pour iOS.
Prise en charge du rendu Vulkan
ARCore est désormais compatible avec le rendu Vulkan en exposant l'image de la caméra via un AHardwareBuffer
. Vous pouvez utiliser ce tampon matériel en le liant à un VkImage
.
Pour en savoir plus, consultez Afficher votre application ARCore à l'aide de Vulkan et l'exemple d'application hello_ar_vulkan_c.
Android (Kotlin/Java)
Android NDK (C)
Unity (AR Foundation)
Le rendu Vulkan n'est actuellement pas disponible pour Unity avec AR Foundation.
Stabilisation électronique de l'image (EIS)
Vous pouvez configurer ARCore pour qu'il utilise la stabilisation électronique de l'image, qui fluidifie les images de la caméra pour une expérience utilisateur plus fluide.
Pour en savoir plus, consultez Activer la stabilisation électronique de l'image et l'application exemple hello_eis_kotlin.
Android (Kotlin/Java)
Config.ImageStabilizationMode
Frame.transformCoordinates3d()
Session.isImageStabilizationModeSupported()
- Un problème connu fait que l'appel de
Frame.transformCoordinates3d()
avec des coordonnées 2D autres queOPENGL_NORMALIZED_DEVICE_COORDINATES
provoque un plantage au lieu de générerIllegalArgumentException
. Ce problème sera résolu dans la prochaine version.
Android NDK (C)
ArImageStabilizationMode
ArFrame_transformCoordinates3d()
ArSession_isImageStabilizationModeSupported()
- Un problème connu fait que l'appel de
ArFrame_transformCoordinates3d()
avec des coordonnées 2D autres queAR_COORDINATES_2D_OPENGL_NORMALIZED_DEVICE_COORDINATES
entraîne l'arrêt de votre application au lieu de renvoyerAR_ERROR_INVALID_ARGUMENT
. Ce problème sera résolu dans la prochaine version.
Unity (AR Foundation)
L'EIS n'est actuellement pas disponible pour Unity avec AR Foundation.
iOS
L'EIS n'est actuellement pas disponible pour iOS.
API ARCore Async
Cette version introduit de nouvelles API asynchrones ARCore pour améliorer l'ergonomie lors de l'utilisation d'opérations asynchrones, en suivant le paradigme Future et Promise.
Android (Kotlin/Java)
- Résoudre les ancres de terrain : utilisez
Earth.resolveAnchorOnTerrainAsync()
pour obtenir unResolveAnchorOnTerrainFuture
. L'ancien symboleEarth.resolveAnchorOnTerrain()
est obsolète et pourra être supprimé dans une version ultérieure d'ARCore. - Résoudre les ancres cloud : utilisez
Session.resolveCloudAnchorAsync()
pour obtenir unResolveCloudAnchorFuture
. L'ancien symboleSession.resolveCloudAnchor()
est obsolète et pourra être supprimé dans une version ultérieure d'ARCore. - Héberger des ancres cloud : utilisez
Session.hostCloudAnchorAsync()
pour obtenir unHostCloudAnchorFuture
. Les anciens symbolesSession.hostCloudAnchor()
etSession.hostCloudAnchorWithTtl()
sont obsolètes et pourront être supprimés dans une version ultérieure d'ARCore. - Vérifiez la disponibilité de l'APK : utilisez
ArCoreApk.checkAvailabilityAsync()
pour enregistrer un rappel. L'ancien symboleArCoreApk.checkAvailability()
n'a pas été abandonné.
Android NDK (C)
- Résoudre les ancres de terrain : utilisez
ArEarth_resolveAnchorOnTerrainAsync()
pour obtenir unArResolveAnchorOnTerrainFuture
ou utilisezArResolveAnchorOnTerrainCallback
. L'ancien symboleArEarth_resolveAndAcquireNewAnchorOnTerrain()
est obsolète et pourra être supprimé dans une version ultérieure d'ARCore. - Résoudre les ancres cloud : utilisez
ArSession_resolveCloudAnchorAsync()
pour obtenir unArResolveCloudAnchorFuture
ou utilisezArResolveCloudAnchorCallback
. L'ancien symboleArSession_resolveAndAcquireNewCloudAnchor()
est obsolète et pourra être supprimé dans une version ultérieure d'ARCore. - Héberger des ancres Cloud : utilisez
ArSession_hostCloudAnchorAsync()
pour obtenir unArHostCloudAnchorFuture
ou utilisezArHostCloudAnchorCallback
. Les anciens symbolesArSession_hostAndAcquireNewCloudAnchor()
etArSession_hostAndAcquireNewCloudAnchorWithTtl()
sont obsolètes et pourront être supprimés dans une version ultérieure d'ARCore. - Vérifiez la disponibilité de l'APK : utilisez
ArCoreApk_checkAvailabilityAsync()
pour enregistrer un rappel. L'ancien symboleArCoreApk_checkAvailability()
n'a pas été abandonné.
Unity (AR Foundation)
- Résoudre les ancres de terrain : utilisez
ARAnchorManagerExtensions.ResolveAnchorOnTerrainAsync()
pour obtenir unResolveAnchorOnTerrainPromise
. L'ancien symboleARAnchorManagerExtensions.ResolveAnchorOnTerrain()
est obsolète et pourra être supprimé dans une version ultérieure d'ARCore. - Résoudre les ancres cloud : utilisez
ARAnchorManagerExtensions.ResolveCloudAnchorAsync()
pour obtenir unResolveCloudAnchorPromise
. L'ancien symboleARAnchorManagerExtensions.ResolveCloudAnchorId()
est obsolète et pourra être supprimé dans une version ultérieure d'ARCore. - Héberger des ancres cloud : utilisez
ARAnchorManagerExtensions.HostCloudAnchorAsync()
pour obtenir unHostCloudAnchorPromise
. Les anciens symbolesARAnchorManagerExtensions.HostCloudAnchor()
ont été abandonnés et pourront être supprimés dans une version ultérieure d'ARCore.
iOS
- Résoudre les ancres de terrain : utilisez
GARSession.createAnchorWithCoordinate:altitudeAboveTerrain:eastUpSouthQAnchor:completionHandler:error:
pour obtenir unGARCreateAnchorOnTerrainFuture
. L'ancien symboleGARSession.createAnchorWithCoordinate:altitudeAboveTerrain:eastUpSouthQAnchor:error:
est obsolète et pourra être supprimé dans une version ultérieure d'ARCore. - Résoudre les ancres cloud : utilisez
GARSession.resolveCloudAnchorWithIdentifier:completionHandler:error:
pour obtenir unGARResolveCloudAnchorFuture
. L'ancien symboleGARSession.resolveCloudAnchorWithIdentifier:error:
est obsolète et pourra être supprimé dans une version ultérieure d'ARCore. - Héberger des ancres cloud : utilisez
GARSession.hostCloudAnchor:TTLDays:completionHandler:error:
pour obtenir unGARHostCloudAnchorFuture
. Les anciens symbolesGARSession.hostCloudAnchor:error:
etGARSession.hostCloudAnchor:TTLDays:error:
sont obsolètes et pourront être supprimés dans une version ultérieure d'ARCore.
Nouveautés d'ARCore v1.36.0
Prise en charge de Swift Package Manager sur iOS
Le SDK ARCore pour iOS est désormais officiellement compatible avec Swift Package Manager. Consultez Activer la RA dans votre application iOS pour obtenir des instructions sur l'intégration à ARCore à l'aide de Swift Package Manager.
Nouveautés d'ARCore v1.35.0
La précision de la pose géospatiale remplace le cap par le lacet
Toutes les poses géospatiales exposent désormais la précision de leur orientation de la rotation du lacet, en remplacement de la précision du cap.
- Java/Kotlin : remplacez
GeospatialPose.getHeading()
parGeospatialPose.getEastUpSouthQuaternion()
etGeospatialPose.getHeadingAccuracy()
parGeospatialPose.getOrientationYawAccuracy()
. - C : Remplacez
ArGeospatialPose_getHeading()
parArGeospatialPose_getEastUpSouthQuaternion()
etArGeospatialPose_getHeadingAccuracy()
parArGeospatialPose_getOrientationYawAccuracy()
. - iOS : remplacez
GARGeospatialTransform.heading
parGARGeospatialTransform.eastUpSouthQTarget
etGARGeospatialTransform.headingAccuracy
parGARGeospatialTransform.orientationYawAccuracy
. - Unity : remplacez
GeospatialPose.Heading
parGeospatialPose.EunRotation
etGeospatialPose.HeadingAccuracy
parGeospatialPose.OrientationYawAccuracy
.
Autres modifications et mises à jour
Pour en savoir plus sur les autres modifications, les corrections de bugs et les améliorations des performances, consultez les notes de version :
- Notes de version du SDK ARCore pour Android
- Notes de version d'ARCore pour Android NDK
- Notes de version du SDK ARCore pour iOS
- Notes de version des extensions ARCore pour AR Foundation
Nouveautés d'ARCore v1.34.0
Vérifier si les fonctionnalités géospatiales sont disponibles dans la position actuelle de l'appareil
L'API Geospatial peut désormais vérifier la disponibilité du système VPS (Visual Positioning System) à une position horizontale spécifiée lors de l'exécution. Cette API peut être utilisée sans session de RA active, par exemple pour présenter un bouton "Entrer en RA" uniquement lorsque le VPS est disponible.
- Java/Kotlin :
Session.checkVpsAvailabilityAsync()
- C:
ArSession_checkVpsAvailabilityAsync()
- iOS :
GARSession.checkVPSAvailabilityAtCoordinate:completionHandler:
- Unity (AR Foundation) :
AREarthManager.CheckVpsAvailability()
Orientation de la pose géospatiale
Les poses géospatiales exposent désormais leur orientation dans l'espace 3D.
- Java/Kotlin :
feedbackGeospatialPose.getEastUpSouthQuaternion()
- C:
ArEarth_getGeospatialPose()
- iOS :
GARGeospatialTransform.eastUpSouthQTarget
- Unity :
GeospatialPose.EunRotation()
Conversions de poses géospatiales
Les poses géospatiales peuvent désormais être converties en poses dans l'espace du monde (AR) et inversement.
Pour obtenir la pose géospatiale à partir d'une pose AR :
- Java/Kotlin :
Earth.getGeospatialPose()
- C:
ArEarth_getGeospatialPose()
- iOS :
GARSession.geospatialTransformFromTransform:error:
- Unity :
AREarthManager.Convert(Pose)
Pour obtenir la pose AR à partir d'une pose Geospatial :
- Java/Kotlin :
Earth.getPose()
- C:
ArEarth_getPose()
- iOS :
GARSession.transformFromGeospatialCoordinate:altitude:eastUpSouthQTarget:error:
- Unity :
AREarthManager.Convert(GeospatialPose)
La valeur de cap des poses géospatiales obtenues à partir de ces fonctions est définie sur zéro. Utilisez plutôt les éléments suivants :
- Android (Java/Kotlin/C) : quaternion EUS de la pose
- iOS :
eastUpSouthQTarget
de la pose - Unity :
EunRotation
de la pose
Autres modifications et mises à jour
Pour en savoir plus sur les autres modifications, les corrections de bugs et les améliorations des performances, consultez les notes de version :
- Notes de version du SDK ARCore pour Android
- Notes de version d'ARCore pour Android NDK
- Notes de version du SDK ARCore pour iOS
- Notes de version des extensions ARCore pour AR Foundation
Nouveautés d'ARCore v1.33.0
Nouveau point de terminaison Cloud Anchors
- Pour utiliser les ancres cloud, vous devez désormais activer l'API ARCore au lieu de l'ancienne API ARCore Cloud Anchor, qui est désormais obsolète. Pour prendre en charge les anciennes versions de l'application, vous pouvez activer les deux lors de la transition. Les applications conçues avec le SDK ARCore 1.32.0 ou une version antérieure cibleront l'ancienne API, tandis que celles conçues avec le SDK ARCore 1.33.0 ou une version ultérieure cibleront la nouvelle API. Remarques :
- La nouvelle API utilise le nom de domaine
arcore.googleapis.com
au lieu dearcorecloudanchor.googleapis.com
. - Si vous utilisez une clé API limitée par API, vous devez autoriser l'API ARCore.
- Si vous envoyez des requêtes à l'API ARCore Cloud Anchor Management depuis votre backend, vous devez également remplacer le nom de domaine par
arcore.googleapis.com
après avoir activé l'API ARCore. - L'ancienne API/ancien point de terminaison continueront d'être pris en charge jusqu'en août 2023.
- Pour en savoir plus, consultez Modifications apportées au point de terminaison ARCore 1.33 Cloud Anchors.
- La nouvelle API utilise le nom de domaine
Ancres de terrain
- L'API d'ancrage de terrain géospatial crée un ancrage à une position horizontale et une altitude spécifiées par rapport au terrain de la position horizontale.
Autres modifications et mises à jour
Pour en savoir plus sur les autres modifications, les corrections de bugs et les améliorations des performances, consultez les notes de version :
- Notes de version du SDK ARCore pour Android
- Notes de version d'ARCore pour Android NDK
- Notes de version du SDK ARCore pour iOS
- Notes de version des extensions ARCore pour AR Foundation
Nouveautés d'ARCore v1.32.0
Cette version ne comporte aucune nouvelle fonctionnalité.
Android et Unity (AR Foundation) pour Android
- Le
targetSdkVersion
d'ARCore a été mis à jour vers le niveau d'API Android 32. Si votre application ne spécifie pas detargetSdkVersion
, la valeurtargetSdkVersion
de votre application deviendra 32 en raison de la fusion du fichier manifeste.- SDK Android : si vous spécifiez un
targetSdkVersion
dans le fichierbuild.gradle
ouAndroidManifest.xml
de votre projet, cela remplacera la valeurtargetSdkVersion
d'ARCore. - AR Foundation pour Android : si vous spécifiez un niveau d'API cible dans Project Settings > Player > Android > Other Settings (Paramètres du projet > Lecteur > Android > Autres paramètres) de votre projet Unity, la valeur
targetSdkVersion
d'ARCore sera remplacée.
- SDK Android : si vous spécifiez un
Autres modifications et mises à jour
Pour en savoir plus sur les autres modifications, les corrections de bugs et les améliorations des performances, consultez les notes de version :
- Notes de version du SDK ARCore pour Android
- Notes de version d'ARCore pour Android NDK
- Notes de version du SDK ARCore pour iOS
- Notes de version des extensions ARCore pour AR Foundation
Nouveautés d'ARCore v1.31.0
API ARCore Geospatial
La nouvelle API ARCore Geospatial utilise les données des modèles 3D Google Earth et les données d'images Street View de Google Maps pour permettre à votre application de proposer des expériences de réalité augmentée immersives, à l'échelle mondiale et basées sur la localisation.
Consultez la présentation de l'API ARCore Geospatial pour obtenir de la documentation pour les développeurs spécifique à la plate-forme et pour commencer à utiliser la nouvelle API Geospatial.
Profondeur longue portée
L'API ARCore Depth est désormais optimisée pour inclure la détection de profondeur à plus longue portée, ce qui augmente la plage des observations de profondeur représentables. Les 16 bits de l'image de profondeur sont utilisés, ce qui offre une plage maximale de 65 535 millimètres. Auparavant, seuls 13 bits étaient renseignés, avec une limite de 8 191 millimètres.
Consultez Modifications apportées à la profondeur pour obtenir la documentation destinée aux développeurs spécifique à la plate-forme et comprendre les modifications apportées à l'API Depth.
Remarques spécifiques à la plate-forme
Android
Nouvelles API ARCore Geospatial
Java
Earth
permet la localisation dans des coordonnées relatives à la Terre.Earth.createAnchor()
crée uneAnchor
à l'emplacement et à l'orientation spécifiés par rapport à la Terre.
Earth.Earthstate
décrit l'état actuel deEarth
, y compris sonTrackingState
.GeospatialPose
décrit un emplacement, une altitude et un cap spécifiques par rapport à la Terre.
C
ArEarth
permet la localisation dans des coordonnées relatives à la Terre.ArEarth_acquireNewAnchor()
crée uneAnchor
à l'emplacement et à l'orientation spécifiés par rapport à la Terre.ArEarthState
décrit l'état actuel deArEarth
, y compris sonArTrackingState
.
ArGeospatialPose
décrit un emplacement, une altitude et un cap spécifiques par rapport à la Terre.
Mise à jour des API ARCore Depth
Java
- Les appels de fonction de l'API Depth ont changé :
Frame.acquireDepthImage
àFrame.acquireDepthImage16Bits
.Frame.acquireRawDepthImage
àFrame.acquireRawDepthImage16Bits
.- Les formats d'image de sortie des deux appels sont passés de
android.graphics.ImageFormat#DEPTH16
àandroid.hardware.HardwareBuffer#D_16
. - La profondeur est toujours représentée par un entier de 16 bits en millimètres, mais tous les bits sont désormais utilisés pour représenter la profondeur, ce qui permet à la plage maximale exprimable de passer de 8 191 mm à 65 535 mm.
- Les appels de fonction
Frame.acquireDepthImage
etFrame.acquireRawDepthImage
de l'API Depth sont obsolètes. Veuillez utiliserFrame.acquireDepthImage16Bits
etFrame.acquireRawDepthImage16Bits
à la place.
- Les appels de fonction de l'API Depth ont changé :
C
- Les appels de fonction de l'API Depth ont changé :
ArFrame_acquireDepthImage
àArFrame_acquireDepthImage16Bits
.- De
ArFrame_acquireRawDepthImage
àArFrame_acquireRawDepthImage16Bits
- Les formats d'image de sortie pour les deux appels sont passés de
AR_IMAGE_FORMAT_DEPTH16
àAR_IMAGE_FORMAT_D_16
. - La profondeur est toujours représentée par un entier de 16 bits en millimètres, mais tous les bits sont désormais utilisés pour représenter la profondeur, ce qui permet à la plage maximale exprimable de passer de 8 191 mm à 65 535 mm.
- Les appels de fonction
ArFrame_acquireDepthImage
etArFrame_acquireRawDepthImage
de l'API Depth sont obsolètes. Veuillez utiliserArFrame_acquireDepthImage16Bits
etArFrame_acquireRawDepthImage16Bits
à la place.
- Les appels de fonction de l'API Depth ont changé :
Unity (AR Foundation)
Nouvelles API ARCore Geospatial :
AREarthManager
permet la localisation dans des coordonnées relatives à la Terre.EarthTrackingState
obtient l'état du suivi de la Terre pour le dernier frame.EarthState
gère les conditions d'erreur Earth.
GeospatialPose
décrit un lieu, une altitude et un cap spécifiques par rapport à la Terre.ARGeospatialAnchor
fournit un point d'ancrage pour les objets de jeu de votre scène, spécifié à un emplacement et une orientation par rapport à la Terre.
iOS
Nouvelles API ARCore Geospatial :
GAREarth
Fournit une localisation par rapport à la Terre.GAREarthState.earthState
gère les états et conditions d'erreur.GAREarthState.trackingState
maintient l'état du suivi, requis pour les données géospatiales.
GARGeospatialTransform
Représentation d'une transformation globale, y compris les estimations de localisation, de cap, d'altitude et de précision.GARSession.createAnchorWithCoordinate:altitude:eastUpSouthQAnchor:error:
Crée une ancre géospatiale à l'emplacement et à l'orientation spécifiés par rapport à la Terre.
Autres modifications
Pour en savoir plus sur les autres modifications, les corrections de bugs et les améliorations des performances, consultez les notes de version :
- Notes de version du SDK ARCore pour Android
- Notes de version d'ARCore pour Android NDK
- Notes de version du SDK ARCore pour iOS
- Notes de version des extensions ARCore pour AR Foundation
Nouveautés d'ARCore v1.30.0
Cette version ne comporte aucune nouvelle fonctionnalité.
Android
- Valeurs renvoyées par l'API annotées avec
@NonNull
et@Nullable
. - Mise à jour des versions des outils de compilation utilisés pour compiler les exemples : Gradle vers la version 7.0.2 et le plug-in Android Gradle vers la version 7.0.4. La mise à niveau de ces outils n'est pas requise pour les applications ARCore existantes. Pour en savoir plus sur les nouvelles fonctionnalités, les problèmes connus et les informations sur l'incompatibilité, consultez la documentation Android sur le plug-in Android Gradle.
Unity (AR Foundation)
Ajout d'une version
arcore-unity-extensions-without-edm4u.tgz
. Cette variante de version ne regroupe pas les dépendances externes telles que le Gestionnaire de dépendances externes pour Unity et permet les mises à niveau vers EDM. L'utilisation de cette version Lite peut résoudre les problèmes d'incompatibilité lors de l'utilisation des bibliothèques Firebase. Pour commencer, consultez les instructions d'installation des extensions ARCore pour AR Foundation.Mise à niveau d'ExternalDependencyManager vers la version 1.2.168 pour une meilleure compatibilité avec la version 2021.2 et les versions ultérieures. Pour en savoir plus, consultez le journal des modifications d'EDM.
Correction d'un problème où la configuration de la session ARCore s'effectuait à chaque frame, même en l'absence de modification de la configuration de la session, ce qui entraînait une baisse du nombre de FPS.
iOS
- Correction de plusieurs bugs et amélioration des performances.
Nouveautés d'ARCore v1.29.0
Cette version ne comporte aucune nouvelle fonctionnalité.
Android
- hello_ar_java et hello_ar_kotlin : la couleur d'un objet est modifiée lorsqu'il est placé à l'aide de
SCREENSPACE_WITH_APPROXIMATE_DISTANCE
pour mieux distinguer les objets placés à l'aide de Placement instantané. - persistent_cloud_anchor_java : ajout d'une dépendance de compilation manquante à l'exemple. Correction d'un bug qui entraînait l'affichage de l'état
CloudAnchorState ERROR_NOT_AUTHORIZED
pour tout ancrage, même si le projet était correctement configuré.
Unity (AR Foundation)
- Le package ARCore Extensions dépend désormais du plug-in ARKit XR pour s'assurer que la version d'AR Foundation installée est compatible avec la version du plug-in ARKit XR. Correction d'une erreur de compilation lors de l'installation d'ARCore Extensions sur Unity 2019.x et de l'activation du plug-in ARKit XR.
- Les paramètres du projet ARCore Extensions ont été déplacés de Project Settings > XR > ARCore Extensions (Paramètres du projet > XR > ARCore Extensions) vers Project Settings > XR Plug-in Management > ARCore Extensions (Paramètres du projet > Gestion des plug-ins XR > ARCore Extensions).
ARCoreExtensionsConfig
,ARCoreExtensionsCameraConfigFilter
etARCoreRecordingConfig
ont été déplacés du menu Create > XR > ARCore Extensions vers le menu Create > XR.
iOS
- Correction de plusieurs bugs et amélioration des performances.
Notes de version complètes
- Notes de version complètes du SDK ARCore pour Android
- Notes de version complètes d'ARCore pour Android NDK
- Notes de version complètes du SDK ARCore pour iOS
- Notes de version des extensions ARCore pour AR Foundation
Nouveautés d'ARCore v1.28.0
- À partir de novembre 2022, les applications compatibles avec la RA ne pourront plus acquérir d'images NDK ni de métadonnées d'image. Les versions du SDK concernées dépendent de la fonction spécifique appelée. Pour en savoir plus, consultez l'annonce de l'abandon.
- C : Les appels à
ArImage_getNdkImage()
etArImage_getNdkCameraMetadata()
renvoient toujoursnullptr
pour les objetsAImage
etACameraMetadata
. - Java : l'objet
Image
renvoyé parFrame#acquireCameraImage()
sera de taille0
x0
pixels. Les appels àFrame#getImageMetadata()
génèrent toujoursIllegalArgumentException
. - Unity (AR Foundation) : lorsque vous utilisez AR Foundation 2.1 (Unity 2019 LTS), les appels à
XRCameraSubsystem.TryGetLatestImage(out XRCameraImage)
renvoient toujoursfalse
. Les versions 4.x et ultérieures d'AR Foundation ne sont pas concernées. Les appels àXRCameraSubsystem.TryGetLatestImage(out XRCameraImage)
se comporteront normalement. - SDK ARCore pour Unity (obsolète) : les appels à
Frame.CameraImage.AcquireCameraImageBytes()
seront de taille0
x0
pixels. Les appels àFrame.CameraMetadata.GetAllCameraMetadataTags()
renvoient unList<CameraMetadataTag>
vide.
- C : Les appels à
- Java :
ArImage#getCropRect()
renvoie désormais un rectangle de recadrage de taille réelle, c'est-à-dire que tous les pixels de l'image sont valides. Pour en savoir plus, consultezandroid.media.Image#getCropRect()
.
Nouveautés d'ARCore v1.27.0
Cette version ne comporte aucune nouvelle fonctionnalité. Consultez les notes de version suivantes pour découvrir les différentes corrections de bugs et améliorations de performances.
- Notes de version complètes du SDK ARCore pour Android
- Notes de version complètes d'ARCore pour Android NDK
- Notes de version complètes du SDK ARCore pour iOS
- Notes de version des extensions ARCore pour AR Foundation
En plus de diverses corrections de bugs, cette version inclut les éléments suivants.
Exemples d'applications en Kotlin
Ajout de hello_ar_kotlin pour illustrer les bonnes pratiques lors de l'utilisation de Kotlin.
Pour en savoir plus, consultez le guide de démarrage rapide pour Android.
Ajout de ml_kotlin pour montrer comment un modèle de classification d'images peut être utilisé avec ARCore.
Pour en savoir plus, consultez Utiliser ARCore comme entrée pour les modèles de machine learning.
Nouveautés d'ARCore v1.26.0
Cette version ajoute les modifications importantes suivantes :
- Les URI sont désormais compatibles avec les ensembles de données dans Enregistrement et lecture.
Autres modifications et mises à jour
Consultez les notes de version suivantes pour en savoir plus sur les autres corrections de bugs et les autres modifications destructives.
- Notes de version complètes du SDK ARCore pour Android
- Notes de version complètes d'ARCore pour Android NDK
- Notes de version complètes du SDK ARCore pour iOS
- Notes de version des extensions ARCore pour AR Foundation
Nouveautés d'ARCore v1.25.0
Cette version ne comporte aucune nouvelle fonctionnalité. Consultez les notes de version suivantes pour découvrir les différentes corrections de bugs et améliorations de performances.
- Notes de version complètes du SDK ARCore pour Android
- Notes de version complètes d'ARCore pour Android NDK
- Notes de version complètes du SDK ARCore pour iOS
- Notes de version complètes du SDK ARCore pour Unity
- Notes de version des extensions ARCore pour AR Foundation
Nouveautés d'ARCore v1.24.0
Cette version ajoute les modifications importantes suivantes :
- Une nouvelle API Raw Depth qui fournit une image de profondeur sans filtrage de l'espace image
- Ajout de la fonctionnalité d'enregistrement de pistes de données personnalisées à l'API Recording and Playback
- La possibilité d'effectuer des tests de profondeur
Profondeur brute
L'API Raw Depth fournit des données de profondeur pour une image de caméra qui sont plus précises que les données de l'API Depth complète, mais qui ne couvrent pas toujours tous les pixels. Les images de profondeur brutes, ainsi que les images de confiance correspondantes, peuvent également être traitées plus en détail, ce qui permet aux applications d'utiliser uniquement les données de profondeur suffisamment précises pour leur cas d'utilisation spécifique.
Guides du développeur :
Enregistrement de pistes personnalisées
La nouvelle fonctionnalité de piste de données personnalisées de l'API Recording & Playback vous permet d'ajouter des données personnalisées à un frame ARCore lors de l'enregistrement et de récupérer ces mêmes données à partir du frame lors de la lecture.
Guides du développeur :
Tests de positionnement de la profondeur
Auparavant, les tests de sélection ne pouvaient être effectués que sur les plans détectés, ce qui limitait les emplacements aux grandes surfaces planes. Les tests de collision de profondeur exploitent à la fois les informations de profondeur lisses et brutes pour fournir des résultats de collision plus précis, même sur des surfaces non planes et à faible texture.
Guides du développeur :
Autres modifications et mises à jour
Consultez les notes de version suivantes pour en savoir plus sur les autres corrections de bugs et les autres modifications destructives.
- Notes de version complètes du SDK ARCore pour Android
- Notes de version complètes d'ARCore pour Android NDK
- Notes de version complètes du SDK ARCore pour iOS
- Notes de version complètes du SDK ARCore pour Unity
- Notes de version des extensions ARCore pour AR Foundation
Nouveautés d'ARCore v1.23.0
Compatibilité avec la double caméra en attente
La prise en charge de la double caméra sera déployée au cours des prochaines semaines. Pour en savoir plus, consultez la page Appareils compatibles.
Nouveaux outils de débogage
En envoyant un intent de diffusion, les développeurs peuvent activer les éléments suivants :
Journalisation des appels d'API ARCore dans le journal de débogage Android
La superposition des performances ARCore
Héberger et résoudre les ancres cloud
Les applications compatibles avec la RA et conçues à l'aide du SDK ARCore 1.11.0 ou version antérieure ne peuvent plus héberger ni résoudre les ancres cloud.
Les ancres cloud renvoyées par
ArSession_hostAndAcquireNewCloudAnchor
etArSession_resolveAndAcquireNewCloudAnchor
auront toujours l'étatAR_CLOUD_ANCHOR_STATE_ERROR_INTERNAL
.Java : les ancres Cloud renvoyées par
Session.hostCloudAnchor(Anchor)
etSession.resolveCloudAnchor(String)
auront toujours l'étatAnchor.CloudAnchorState.ERROR_INTERNAL
.Unity : les ancres cloud renvoyées par
XPSession.CreateCloudAnchor(Anchor)
etXPSession.ResolveCloudAnchor(string)
auront toujours l'étatCloudServiceResponse.ErrorInternal
.
Les applications conçues avec le SDK ARCore 1.12.0 ou version ultérieure ne sont pas concernées. Leur utilisation de l'API ARCore Cloud Anchor est soumise au règlement relatif aux abandons.
Autres modifications et mises à jour
Consultez les notes de version suivantes pour découvrir d'autres corrections de bugs et autres modifications majeures.
Nouveautés d'ARCore v1.22.0
Cette version ajoute de nouvelles API d'enregistrement et de lecture et des API de filtre de configuration de caméra pour ARCore Extensions pour AR Foundation. Pour en savoir plus, consultez les notes de version complètes d'ARCore Extensions.
Autres modifications et mises à jour
Consultez les notes de version suivantes pour découvrir d'autres corrections de bugs et autres modifications majeures.
Nouveautés d'ARCore v1.21.0
Cette version ajoute de nouvelles API d'enregistrement et de lecture pour Android, Android NDK et Unity.
Enregistrement et lecture
Grâce aux API Recording and Playback, vous pouvez enregistrer des données vidéo et de RA une seule fois dans un environnement donné, puis utiliser ce contenu pour remplacer une session de caméra en direct à des fins de test. ARCore enregistre les sessions dans des fichiers MP4 contenant plusieurs pistes vidéo et d'autres données diverses sur l'appareil. Vous pouvez ensuite indiquer à votre application d'utiliser ces données à la place d'une session de caméra en direct. Cela vous permet de rejouer ce contenu indéfiniment pour essayer différents effets de RA sans avoir à retourner sur le terrain.
Pour en savoir plus :
Java :
C:
Unity :
Nouveautés d'ARCore v1.20.0
Cette version ajoute les modifications importantes suivantes :
Nouvelle prise en charge des ancres cloud persistantes.
Mise à jour des fonctionnalités de métadonnées d'image pour Android et Android NDK.
Nouvelles instructions nécessitant Gradle version 5.6.4 ou ultérieure pour prendre en charge les extensions ARCore pour AR Foundation ou le SDK ARCore pour Unity (1.19 ou version ultérieure) avec Unity 2018.4 ou version ultérieure.
Nouvelle compatibilité avec les ancres cloud persistantes
Avant ARCore v1.20, les ancres cloud ne pouvaient être résolues que pendant 24 heures maximum après leur premier hébergement. Grâce aux ancres cloud persistantes, vous pouvez désormais créer une ancre cloud avec une durée de vie (TTL) comprise entre un et 365 jours. Vous pouvez également prolonger la durée de vie de l'ancre après son hébergement à l'aide de l'API Cloud Anchor Management.
L'utilisation des ancres cloud persistantes est couverte par la nouvelle Règle d'abandon des ancres cloud.
É : Guide du développeur,
ArSession_hostAndAcquireNewCloudAnchorWithTtl
etArSession_estimateFeatureMapQualityForHosting
.Java : Guide du développeur,
hostCloudAnchorWithTtl
etestimateFeatureMapQualityForHosting
.iOS : Guide du développeur,
hostCloudAnchor:TTLDays:error:
etestimateFeatureMapQualityForHosting:
.Extensions ARCore pour AR Foundation : Guide du développeur Android, Guide du développeur iOS,
ARAnchorManager.HostCloudAnchor(ARAnchor, int)
,ARAnchorManager.SetAuthToken(string)
etARAnchorManager.EstimateFeatureMapQualityForHosting(Pose)
.Unity ciblant Android : Guide du développeur,
XPSession.CreateCloudAnchor(Anchor, int)
etXPSession.EstimateFeatureMapQualityForHosting(Pose)
.Ciblage iOS Unity : Guide du développeur,
XPSession.SetAuthToken(string)
etXPSession.CreateCloudAnchor(UnityARUserAnchorComponent, int)
.
Autres modifications et mises à jour
Consultez les notes de version suivantes pour découvrir d'autres corrections de bugs et autres modifications majeures.
Nouveautés d'ARCore v1.19.0
Cette version ajoute les modifications importantes suivantes :
- Nouvelle API Instant Placement pour Android, Android NDK et Unity.
- Nouvelles instructions pour compiler pour Android 11 avec Unity.
Placement instantané
L'API Instant Placement permet à l'utilisateur de placer un objet RA à l'écran sans avoir à attendre qu'ARCore détecte la géométrie de la surface. Le placement des objets est affiné en temps réel à mesure que l'utilisateur se déplace dans l'environnement. Une fois qu'ARCore détecte la bonne pose dans la région où l'objet RA est placé, l'objet blanc est automatiquement mis à jour pour être précis en termes de pose et devient opaque.
L'extrait suivant montre une figurine Android virtuelle sur une table réelle. La figurine est blanche et beaucoup plus petite lorsqu'elle est placée pour la première fois. Une fois qu'ARCore a affiné ses calculs des dimensions de la scène, la figure se déplace vers une position plus précise. Cela peut entraîner une différence dans la "taille" perçue de l'objet.
Pour en savoir plus :
Android :
Android NDK :
Unity :
Nouveautés d'ARCore v1.18.0
Cette version ajoute les modifications importantes suivantes :
- Nouvelle API Depth pour Android, Android NDK et Unity.
- Nouvelles instructions pour créer des assets Visage augmenté et les importer dans Android Studio.
- L'API Depth sera compatible avec
4.1.0-preview.2
pourAR Foundation
etARCore XR Plugin
.
API Depth
Sur les appareils compatibles avec la profondeur, l'API Depth utilise l'appareil photo RVB de l'appareil compatible ARCore ou le capteur de profondeur actif, le cas échéant, pour créer des cartes de profondeur. Vous pouvez ensuite utiliser la profondeur par pixel fournie par une carte de profondeur pour faire apparaître avec précision des objets virtuels devant ou derrière des objets réels, ce qui permet de proposer des expériences utilisateur immersives et réalistes.
Par exemple, les images suivantes montrent une figurine Android virtuelle dans un espace réel contenant un coffre à côté d'une porte. L'API Depth occulte correctement la silhouette derrière le bord du tronc.
Pour en savoir plus :
Android :
Android NDK :
Unity :
Nouveautés d'ARCore v1.17.0
Nouveautés du SDK ARCore pour Android
Ajout de nouvelles méthodes permettant de mettre en mémoire tampon plusieurs images de caméra. En plus d'autres techniques telles que le rendu multithread, cela peut être utilisé pour réduire la variabilité des fréquences d'images.
Ajout de l'utilisation du capteur de profondeur et des getters FPS cible manquants :
Consultez également les notes de version complètes du SDK Android.
Nouveautés du SDK ARCore pour Unity
- Ajout de la prise en charge du rendu multithread dans Unity 2018.2 ou version ultérieure, ce qui, dans la plupart des cas, améliorera les performances et pourra contribuer à réduire la variabilité des fréquences d'images. Il s'agit d'un paramètre de projet Unity, situé dans Project Settings (Paramètres du projet) > Player (Lecteur) > Android > Other Settings (Autres paramètres) > Multithreaded Rendering (Rendu multithread). Pour en savoir plus, consultez le guide du développeur.
- Ajout de
SessionStatus.ErrorCameraNotAvailable
etSessionStatus.ErrorIllegalState
pour indiquer des états d'erreur spécifiques à la session ARCore.
Consultez également les notes de version complètes du SDK ARCore pour Unity.
Nouveautés du SDK ARCore pour iOS
La taille binaire du SDK Cloud Anchors a considérablement diminué.
Le bitcode est désormais compatible avec les visages augmentés.
Consultez également les notes de version complètes du SDK ARCore pour iOS.
Nouveautés d'ARCore v1.16.0
Remarque concernant le SDK ARCore pour Android et le SDK Sceneform pour Android
Cette version ajoute les modifications importantes suivantes :
- La plupart des appareils renvoient désormais des configurations de caméras compatibles supplémentaires avec des résolutions de texture GPU inférieures à la résolution de texture GPU par défaut de l'appareil.
Pour en savoir plus, consultez Appareils compatibles avec ARCore.
Ces résolutions GPU étendues sont disponibles via l'API
getSupportedCameraConfigs(CameraConfigFilter)
.
Voir également :
Points à retenir concernant ARCore Extensions for AR Foundation
Cette version ajoute les modifications importantes suivantes :
XRCameraConfiguration
d'AR Foundation est étendu avec des méthodes qui vous permettent de choisir la configuration de caméra appropriée en fonction des critères de votre choix. Ces méthodes incluent GetTextureDimensions(), GetFPSRange() et GetDepthSensorUsages(). Consultez les instructions détaillées.Unity 2019.3.0f6 est désormais la version minimale recommandée pour les extensions ARCore. AR Foundation 3.1.0-preview.6 nécessite Unity version 2019.3 ou ultérieure.
Unity utilise désormais les termes Ancre, Ancre cloud et ID d'ancre cloud dans son API AR multiplate-forme. La documentation des extensions ARCore a été mise à jour en conséquence.
Voir également :
Nouveautés du SDK ARCore pour Unity
Cette version ajoute la modification notable suivante :
- La plupart des appareils renvoient désormais des configurations de caméras compatibles supplémentaires avec des résolutions de texture GPU inférieures à la résolution de texture GPU par défaut de l'appareil. (Pour en savoir plus, consultez Appareils compatibles avec ARCore.) Ces résolutions de GPU étendues sont disponibles via l'API ARCoreCameraConfigFilter.
Voir également :
Notes de version complètes du SDK ARCore pour Unity
Nouveautés d'ARCore v1.15.0
Points à retenir concernant ARCore Extensions for AR Foundation
Cette version ajoute les modifications importantes suivantes.
Ajout de l'exemple CloudAnchors montrant comment créer des expériences de RA partagées pour Android et iOS. Consultez les instructions pour Android ou iOS.
Unity 2019.2.17f1 est désormais la version minimale recommandée pour une utilisation avec les extensions ARCore.
Notes de version complètes des extensions ARCore
Nouveautés du SDK ARCore pour Unity
Cette version présente les problèmes connus suivants.
L'aperçu instantané peut figer Unity lorsque vous utilisez Android 9 et un câble USB 3. Pour résoudre ce problème, passez à Android 10 ou utilisez un câble USB 2.
Il est possible que l'aperçu instantané ne s'affiche pas sur l'appareil lorsque la résolution de la vue du jeu Unity est trop élevée. Pour y remédier, réduisez la résolution de la vue du jeu Unity dans l'éditeur.
Notes de version complètes du SDK ARCore pour Unity
Changements supplémentaires
Consultez les notes de version suivantes pour découvrir d'autres corrections de bugs et autres modifications majeures.
Nouveautés d'ARCore v1.14.0
Cette version ajoute les modifications importantes suivantes.
Lorsqu'une application perd temporairement l'accès à l'appareil photo au profit d'une autre application sur l'appareil, la raison de l'échec du suivi est désormais plus spécifique :
Android :
TrackingFailureReason
estCAMERA_UNAVAILABLE
au lieu deNONE
.Android NDK :
ArTrackingFailureReasons
estAR_TRACKING_FAILURE_REASON_CAMERA_UNAVAILABLE
au lieu deAR_TRACKING_FAILURE_REASON_NONE
.Unity :
Session.LostTrackingReason
estLostTrackingReason.CameraUnavailable
au lieu deNone
.
Google collecte et traite les données issues de votre utilisation du package ARCore Extensions conformément aux Règles de confidentialité de Google et aux Conditions d'utilisation des API Google. Vous pouvez désactiver cette fonctionnalité.
Nouveautés d'ARCore v1.13.0
Cette version ajoute les modifications importantes suivantes.
Prise en charge de l'utilisation d'ARCore Extensions pour AR Foundation d'Unity afin de créer des applications iOS avec des ancres cloud.
Prise en charge de l'estimation de l'éclairage HDR ambiant dans Sceneform.
Consultez les notes de version suivantes pour découvrir d'autres corrections de bugs et autres modifications majeures.
Nouveautés d'ARCore v1.12.0
Cette version ajoute les modifications suivantes :
Ajout de la fonctionnalité Visages augmentés à iOS. Pour en savoir plus, consultez la présentation, le guide de démarrage rapide et le guide du développeur.
Prise en charge de l'utilisation des extensions ARCore pour AR Foundation d'Unity afin de créer des applications Android avec des ancres cloud.
Les modifications suivantes ont été apportées aux ancres cloud :
- Pour respecter nos nouvelles exigences de confidentialité concernant l'utilisation des SDK ARCore 1.12 ou versions ultérieures, vous devez indiquer clairement dans votre application que vous utilisez des ancres cloud. Pour ce faire, incluez le texte suivant, ainsi qu'un lien permettant d'en savoir plus, sur un écran d'information : "Pour alimenter cette session, Google traitera les données visuelles de votre caméra." Vous pouvez le faire en implémentant le flux de notification utilisateur recommandé disponible dans nos exemples d'applications Cloud Anchors.
Pour en savoir plus, consultez les Exigences concernant la confidentialité des utilisateurs.
Pour en savoir plus sur les ancres cloud :
Android :
Android NDK :
iOS :
Unity :
Extensions ARCore :
Nouveautés d'ARCore v1.11.0
Cette version ajoute les modifications suivantes :
Le service ARCore s'appelle désormais Services Google Play pour la RA. Sur les appareils Google Play, il est désormais distribué dans les services Google Play.
Les configurations de caméra d'ARCore ciblent 60 FPS sur les appareils compatibles et privilégient l'utilisation du capteur de profondeur sur les appareils qui en sont équipés. Vous pouvez utiliser de nouveaux filtres de configuration de l'appareil photo pour limiter la fréquence d'images de capture de l'appareil photo à 30 fps, empêcher ARCore d'utiliser un capteur de profondeur ou filtrer en fonction des deux options.
Pour en savoir plus sur les configurations de caméras :
Android :
Android NDK :
Unity :
Nouveautés d'ARCore v1.10.0
Cette version ajoute de nouvelles fonctionnalités d'estimation de l'éclairage HDR ambiant à l'API Lighting Estimation pour Android, Android NDK et Unity.
Ces API utilisent le machine learning pour analyser l'image de la caméra et estimer l'éclairage ambiant. Vous pouvez utiliser ces données d'estimation de l'éclairage pour afficher un éclairage extrêmement réaliste, y compris une lumière directionnelle principale, des ombres, un éclairage ambiant, des reflets spéculaires et des réflexions sur les objets virtuels. Le résultat est un contenu virtuel qui semble plus réaliste.
Pour en savoir plus :
Android :
Android NDK :
Unity :
Nouveautés d'ARCore v1.9.0
Nouveautés du SDK ARCore pour Android
Cette version ajoute les nouvelles API et fonctionnalités suivantes :
Scene Viewer est un lecteur immersif qui permet de proposer des expériences de RA depuis votre site Web. Il permet aux utilisateurs d'appareils mobiles Android de placer, d'afficher et d'interagir facilement avec des modèles 3D hébergés sur le Web dans leur environnement.
Nouvelles fonctionnalités d'images augmentées :
ARCore peut désormais suivre les images augmentées en mouvement. Par exemple, une publicité sur un bus qui passe ou une image sur un objet plat tenu par un utilisateur qui bouge sa main.
Une fois qu'une image a été détectée, ARCore est en mesure de continuer à suivre sa position et son orientation, même si elle a temporairement quitté le champ de vision de la caméra.
Utilisez
AugmentedImage#getTrackingMethod()
(Java) ouArAugmentedImage_getTrackingMethod()
(NDK) pour déterminer si l'image augmentée est actuellement suivie par la caméra (FULL_TRACKING
) ou si elle est suivie en fonction de sa dernière position connue (LAST_KNOWN_POSE
).
La documentation sur les ancres cloud inclut désormais une explication plus détaillée sur l'hébergement et la résolution des ancres.
Nouveautés du SDK ARCore pour Unity
Nouvelles fonctionnalités d'images augmentées :
ARCore peut désormais suivre les images augmentées en mouvement. Par exemple, une publicité sur un bus qui passe ou une image sur un objet plat tenu par un utilisateur qui le déplace.
Une fois qu'une image a été détectée, ARCore est en mesure de continuer à suivre sa position et son orientation, même si elle a temporairement quitté le champ de vision de la caméra.
La nouvelle API
AugmentedImage.GetTrackingMethod()
permet à votre application de déterminer si l'image augmentée est actuellement suivie par la caméra (FullTracking
) ou si elle est suivie en fonction de sa dernière position connue (LastKnownPose
).
La documentation sur les ancres cloud inclut désormais une explication plus détaillée sur l'hébergement et la résolution des ancres.
Nouveautés du SDK ARCore pour iOS
Compatibilité avec les appareils suivants :
iPad mini de cinquième génération
iPad Air de troisième génération
La documentation sur les ancres cloud inclut désormais une explication plus détaillée sur l'hébergement et la résolution des ancres.