ARCore'daki yeni ve önemli değişiklikler.
ARCore v1.51.0 sürümündeki yenilikler
Diğer değişiklikler
"SharedCamera" ve "RawDepth" Java örnekleri
minSdkVersion, 23 olarak güncellendi.hello_ar_vulkan_c örneği, temel ARCore özelliklerinin eksiksiz bir Vulkan uygulamasını gösteren, tam işlevli bir uygulama olacak şekilde güncellendi. hello_ar_c ve düzlem kapatma özelliğinde gösterilen özellikleri içerir.
ARCore v1.50.0 sürümündeki yenilikler
ARCore SDK'sindeki targetSdkVersion ile ilgili değişiklikler
ARCore'un targetSdkVersion sürümü, Android API düzeyi 36'ya güncellendi. Uygulamanız bir targetSdkVersion belirtmiyorsa manifest birleştirme nedeniyle uygulamanızın targetSdkVersion değeri 36 olur.
Unity'de, Unity projenizin Project Settings > Player > Android > Other Settings bölümünde Target API Level (Hedef API düzeyi) belirtmek ARCore'un targetSdkVersion değerini geçersiz kılar.
ARCore v1.49.0 sürümündeki yenilikler
Çeşitli hata düzeltmeleri ve performans iyileştirmeleri
ARCore v1.48.0 sürümündeki yenilikler
Unity 6 ve AR Foundation 6 için destek tamamen kullanıma sunuldu
Unity'nin AR Foundation için ARCore Uzantıları artık AR Foundation 6'yı destekliyor. ARCore Extensions for AR Foundation'ın uyumlu bir sürümünü edinmek için aşağıdaki yükleme yöntemlerini kullanın:
Add package from git url...aracılığıyla:https://github.com/google-ar/arcore-unity-extensions.git#arf6kullanın,Add package from tarball...üzerinden: Sürümler sayfasındaarf6ile belirtilen bir sürümü kullanın.
Projenizi AR Foundation 5'ten AR Foundation 6'ya yükseltmek için şu kılavuza bakın.
Zarar veren ve davranışsal değişiklikler
- SDK artık iOS 13.0'dan önceki sürümler için dağıtım hedeflerini desteklemiyor
ARCore v1.47.0 sürümündeki yenilikler
Unity 6 ve AR Foundation 6 için Beta Desteği
Unity 6'yı desteklemek için Unity'nin AR Foundation'ı için ARCore Uzantıları artık AR Foundation 6'nın beta sürümünü destekliyor. ARCore Extensions for AR Foundation'ın uyumlu bir sürümünü edinmek için aşağıdaki yükleme yöntemlerini kullanın:
Add package from git url...aracılığıyla:https://github.com/google-ar/arcore-unity-extensions.git#arf6kullanın,Add package from tarball...üzerinden: Sürümler sayfasındaarf6ile belirtilen bir sürümü kullanın.
Projenizi AR Foundation 5'ten AR Foundation 6'ya yükseltmek için şu kılavuza bakın.
Hata düzeltmeleri
- Unity 6 için Cloud Anchor Sample'ın düzleminin şeffaf olmaması sorunu düzeltildi.
Diğer değişiklikler
- ARCore Extensions GitHub deposunun
maindalı,arf5dalını izleyecek şekilde değiştirildi.
ARCore v1.46.0 sürümündeki yenilikler
ARCore SDK'sindeki targetSdkVersion ile ilgili değişiklikler
ARCore'un targetSdkVersion sürümü, Android API düzeyi 35'e güncellendi. Uygulamanız bir targetSdkVersion belirtmiyorsa manifest birleştirme nedeniyle uygulamanızın targetSdkVersion değeri 35 olur.
Unity'de, Unity projenizin Project Settings > Player > Android > Other Settings bölümünde Target API Level (Hedef API düzeyi) belirtmek ARCore'un targetSdkVersion değerini geçersiz kılar.
ARCore v1.45.0 sürümündeki yenilikler
Flash Mode API
ARCore artık cihazın el feneri modunun etkinleştirilmesini destekliyor. Bu sayede karanlık ortamlarda daha iyi algılama özellikleri kullanılabiliyor.
Android (Kotlin/Java)
Config.FlashMode: Cihazdaki flaş birimini etkinleştirme veya devre dışı bırakma yapılandırma seçeneği.- Flaş özelliklerini algılama ve el feneri modunu etkinleştirme hakkında daha fazla bilgi için Geliştirici kılavuzu'na bakın.
Android NDK (C)
ArFlashMode: Cihazdaki flaş birimini etkinleştirme veya devre dışı bırakma yapılandırma seçeneği.- Flaş özelliklerini algılama ve el feneri modunu etkinleştirme hakkında daha fazla bilgi için Geliştirici kılavuzu'na bakın.
Unity'nin AR Foundation'ı için ARCore Uzantıları, AR Foundation 5'i destekler
AR Foundation için ARCore Uzantıları artık resmi olarak AR Foundation 5'i destekliyor. AR Foundation 5'i (Unity 2022 ve 2023 sürümlerinde doğrulanmış sürüm) kullanırken AR Foundation için ARCore Uzantıları'nın uyumlu bir sürümünü edinmek üzere aşağıdaki yükleme yöntemlerini kullanın:
Add package from git url...aracılığıyla:https://github.com/google-ar/arcore-unity-extensions.git#arf5kullanın,Add package from tarball...üzerinden: Sürümler sayfasındanarf5ile gösterilen bir sürümü kullanın.
AR Foundation sürüm 4'te kalan projeler aşağıdaki yükleme yöntemlerini kullanabilir:
Add package from git url...aracılığıyla:https://github.com/google-ar/arcore-unity-extensions.git#arf4kullanın,Add package from tarball...üzerinden: Sürümler sayfasındanarf4ile gösterilen bir sürümü kullanın.
Projenizi AR Foundation 4'ten AR Foundation 5'e yükseltmek için taşıma rehberini inceleyin.
Beta desteğindeki ARCORE_USE_ARF_5 gibi özel komut dosyası oluşturma sembolleri artık kullanılmamaktadır.
ARCore v1.44.0 sürümündeki yenilikler
Bu sürümde yeni özellik yok.
ARCore v1.43.0 sürümündeki yenilikler
Geospatial Creator'a geçişte Places API
Geospatial Creator'ın arama özelliği artık Google'ın New Places API'sini kullanıyor. Arama özelliğini kullanmak için Google Cloud Console'da "Places API (New)"yi etkinleştirin.
ARCore v1.42.0 sürümündeki yenilikler
Unity için Geospatial Creator'da kutuya tutturma
ARGeospatialCreatorAnchor
Düzenleyici İnceleyici paneline "Tile'a Yapıştır" düğmesi eklendi. Bu düğme, bir arazi veya çatı tutturucusunun
yalnızca düzenleyiciye özel yükseklik değerini, tutturucunun
mevcut enlem ve boylamındaki bir 3D karo geometrisinin en üstüne ayarlar. Bu özelliğin çalışma zamanındaki davranışı etkilemediğini unutmayın. Bu, düzenleyicideki sabitleme noktasının konumunu çalışma zamanındaki konumuyla eşleşecek şekilde ayarlamaya yardımcı olur.
ARCore v1.41.0 sürümündeki yenilikler
Geospatial Creator API
Unity için Geospatial Creator artık Düzenleyici modunda Geospatial Creator nesneleri oluşturma ve bunları kullanma desteği içeriyor. Yeni kullanıma sunulan sınıflar ve API'ler Geospatial Creator API Kılavuzu'nda açıklanmaktadır.
AR Foundation 5.x sürümleri desteği (Beta)
Unity'nin AR Foundation için ARCore Uzantıları artık AR Foundation 5.x sürümlerini destekliyor. Mevcut bir projeyi AR Foundation'a taşımak için taşıma kılavuzuna bakın.
ARCore v1.40.0 sürümündeki yenilikler
iOS'te sahne anlam bilimi
Scene Semantics API artık iOS platformunu hedefleyen Unity'nin AR Foundation'ı için ARCore Uzantıları'nın yanı sıra iOS için ARCore SDK'sında da kullanılabilir. Scene Semantics API, geliştiricilerin pikselleri 11 açık hava bileşeni sınıfına etiketleyerek kullanıcının etrafındaki sahneyi gerçek zamanlı olarak anlamasını sağlar. Daha fazla bilgi için Sahne Semantiği'ne Giriş başlıklı makaleyi inceleyin.
iOS
Unity (AR Foundation)
Unity için Geospatial Creator'da önemli yerleri arama
Unity için Coğrafi Konum İçerik Üreticisi artık Fotogrametrik 3D Döşemeler görünümünü konumlandırmak için metin aramasını destekliyor. Daha fazla bilgi için Geospatial Creator'da ilgi çekici yerleri arama başlıklı makaleyi inceleyin.
ARCore v1.39.0 sürümündeki yenilikler
Bu sürümde yeni özellik yok.
ARCore v1.38.0 sürümündeki yenilikler
Bu sürümde yeni özellik yok.
ARCore v1.37.0 sürümündeki yenilikler
Sahne Anlamları
Sahne Semantiği, çevredeki sahne hakkında daha ayrıntılı bilgiler sunarak kullanıcının etrafındaki dünyayı anlamasını kolaylaştırır. Scene Semantics, kamera görüntüsü feed'inde bir makine öğrenimi modeli çalıştırır ve her pikseli dış mekan kavramlarının 11 etiketinden biriyle eşleşen bir anlamsal görüntü sağlar.
Daha fazla bilgi için Sahne Semantiğine Giriş ve semantics_java örnek uygulaması'na bakın.
Android (Kotlin/Java)
Android NDK (C)
Unity (AR Foundation)
iOS
ARCore v1.40.0 sürümündeki yeniliklere göz atın.
Streetscape Geometry
Streetscape Geometry, Geospatial API etkinleştirildiğinde kullanıcının bulunduğu bölgedeki binaların ve arazinin geometrisini sağlayan yeni bir ARCore Geospatial API'dir.
Android (Kotlin/Java)
Streetscape Geometry Geliştirici Kılavuzu (Kotlin/Java) başlıklı makaleyi inceleyin. Ayrıca, geospatial_java örnek uygulaması, Streetscape Geometry'yi içerecek şekilde güncellendi.
Android NDK (C)
Daha fazla bilgi için Streetscape Geometry Developer Guide (C) başlıklı makaleyi inceleyin.
Unity (AR Foundation)
Daha fazla bilgi için Streetscape Geometry Geliştirici Kılavuzu (Unity)'na bakın.
iOS
Daha fazla bilgi için Streetscape Geometry Developer Guide (iOS) başlıklı makaleyi inceleyin. Ayrıca, GeospatialExample uygulaması, Streetscape Geometry'yi içerecek şekilde güncellendi.
GARStreetscapeGeometry:GARStreetscapeGeometry.mesh, 3D ağlar sağlar.GARStreetscapeGeometry.meshTransform, geometrinin oturumun dünya alanına göre başlangıç dönüşümünü sağlar.GARStreetscapeGeometry.trackingState, izleme durumunu korur.GARStreetscapeGeometry.type, arazi veya bina geometrisi olup olmadığını gösterir.GARStreetscapeGeometry.quality, geometrinin kalitesini sağlar.GARStreetscapeGeometry.identifier, geometrinin benzersiz tanımlayıcısını sağlar.GARSession.createAnchorOnStreetscapeGeometry:transform:error:, belirtilen konumda ve yönde bir bağlantı oluşturur.GARSession.raycastStreetscapeGeometry:direction:error:, sahneye yüklenen Streetscape Geometry'ye karşı ışın dökümü gerçekleştirir.
Çatı sabitleri
Çatı bağlantıları, içerikleri bir çatıya bağlamanıza yardımcı olan yeni bir Coğrafi Alan bağlantı türüdür.
Android (Kotlin/Java)
Coğrafi konumlu bağlantılar (Java) başlıklı makaleyi inceleyin. Ayrıca, geospatial_java örnek uygulaması, çatı ankrajlarını içerecek şekilde güncellendi.
Android NDK (C)
Daha fazla bilgi için Coğrafi uzamsal bağlantılar (C) başlıklı makaleyi inceleyin.
Unity (AR Foundation)
Daha fazla bilgi için Coğrafi uzamsal bağlantılar bölümüne bakın. Ayrıca, Geospatial örneği, çatı ankrajlarını içerecek şekilde güncellendi.
ARAnchorManagerExtensions.ResolveAnchorOnRooftopAsync(), sahnenizdeki oyun nesneleri için belirtilen enlem, boylam, çatıdan yükseklik ve yönde bir bağlantı noktası sağlar.ResolveAnchorOnRooftopPromiseResolveAnchorOnRooftopResult
iOS
Daha fazla bilgi için Coğrafi uzamsal bağlantılar (iOS) başlıklı makaleyi inceleyin. Ayrıca, GeospatialExample uygulaması, çatı ankrajlarını içerecek şekilde güncellendi.
GARSession.createAnchorWithCoordinate:altitudeAboveRooftop:eastUpSouthQAnchor:completionHandler:error:, belirtilen konumda, çatıdan yüksekliği metre cinsinden ve Dünya'ya göre yönüyle bir çatı ankrajı oluşturur.GARCreateAnchorOnRooftopFuture, çatı bağlantısının çözümlenmesinin eşzamansız durumunu tutar.GARRooftopAnchorState, çatı ankrajının çözümlenme durumunu açıklar.
Coğrafi Derinlik
VPS kapsamı olan bölgelerdeki bir ARCore oturumunda hem Depth API hem de Streetscape Geometry modları etkinleştirildiğinde, oluşturulan derinlik görüntüleri Streetscape Geometry kullanılarak iyileştirilir. Sokak Görünümü Geometrisi, 65.535 metre aralığında oluşturulan her derinlik görüntüsüne entegre edilir. Bu avantajdan yararlanmak için Depth API'yi çağırırken herhangi bir değişiklik yapmanız gerekmez.
Android (Kotlin/Java)
Daha fazla bilgi için Geospatial Depth (Java) konusuna bakın.
Android NDK (C)
Daha fazla bilgi için Geospatial Depth (C) bölümüne bakın.
Unity (AR Foundation)
Daha fazla bilgi için Geospatial Depth (C) bölümüne bakın.
iOS
Sahne Semantiği şu anda iOS'te kullanılamamaktadır.
Vulkan oluşturma desteği
ARCore artık kamera görüntüsünü AHardwareBuffer aracılığıyla göstererek Vulkan oluşturma desteği sunuyor. Bu donanım arabelleğini bir VkImage'ye bağlayarak kullanabilirsiniz.
Daha fazla bilgi için ARCore uygulamanızı Vulkan kullanarak oluşturma ve hello_ar_vulkan_c örnek uygulaması başlıklı makaleleri inceleyin.
Android (Kotlin/Java)
Android NDK (C)
Unity (AR Foundation)
Vulkan oluşturma şu anda AR Foundation kullanan Unity için kullanılamamaktadır.
Elektronik görüntü sabitleme (EIS)
ARCore'u, daha akıcı bir kullanıcı deneyimi için kamera karelerini yumuşatan elektronik görüntü sabitleme özelliğini kullanacak şekilde yapılandırabilirsiniz.
Daha fazla bilgi için Elektronik Görüntü Sabitlemeyi Etkinleştirme ve hello_eis_kotlin örnek uygulamasını inceleyin.
Android (Kotlin/Java)
Config.ImageStabilizationModeFrame.transformCoordinates3d()Session.isImageStabilizationModeSupported()Frame.transformCoordinates3d()işlevininOPENGL_NORMALIZED_DEVICE_COORDINATESdışında 2D koordinatlarla çağrılması durumundaIllegalArgumentExceptionoluşturmak yerine kilitlenmeye neden olduğu bilinen bir sorun vardır. Bu sorun, sonraki sürümde düzeltilecektir.
Android NDK (C)
ArImageStabilizationModeArFrame_transformCoordinates3d()ArSession_isImageStabilizationModeSupported()ArFrame_transformCoordinates3d()işlevininAR_COORDINATES_2D_OPENGL_NORMALIZED_DEVICE_COORDINATESdışındaki 2D koordinatlarla çağrılması durumunda uygulamanızınAR_ERROR_INVALID_ARGUMENTdöndürmek yerine sonlanmasına neden olan bilinen bir sorun var. Bu sorun, sonraki sürümde düzeltilecektir.
Unity (AR Foundation)
EIS şu anda AR Foundation kullanan Unity için kullanılamamaktadır.
iOS
EIS şu anda iOS'te kullanılamamaktadır.
ARCore eşzamansız API'leri
Bu sürümde, Future ve Promise paradigmasını izleyerek eşzamansız işlemlerle çalışırken ergonomiyi iyileştirmek için yeni ARCore eşzamansız API'ler kullanıma sunuluyor.
Android (Kotlin/Java)
- Arazi bağlantılarını çözme:
Earth.resolveAnchorOnTerrainAsync()kullanarakResolveAnchorOnTerrainFutureelde edin. Eski sembolEarth.resolveAnchorOnTerrain()kullanımdan kaldırıldı ve ARCore'un sonraki bir sürümünde kaldırılabilir. - Bulut bağlantılarını çözme:
ResolveCloudAnchorFutureelde etmek içinSession.resolveCloudAnchorAsync()kullanın. Eski sembolSession.resolveCloudAnchor()kullanımdan kaldırıldı ve ARCore'un sonraki bir sürümünde kaldırılabilir. - Cloud Anchor'ları barındırma:
Session.hostCloudAnchorAsync()kullanarakHostCloudAnchorFutureelde edin. Eski sembollerSession.hostCloudAnchor()veSession.hostCloudAnchorWithTtl()artık kullanılmıyor ve ARCore'un sonraki bir sürümünde kaldırılabilir. - APK kullanılabilirliğini kontrol edin: Geri çağırma kaydetmek için
ArCoreApk.checkAvailabilityAsync()kullanın. Eski simgeArCoreApk.checkAvailability()kullanımdan kaldırılmamıştır.
Android NDK (C)
- Arazi bağlantılarını çözme:
ArEarth_resolveAnchorOnTerrainAsync()kullanarakArResolveAnchorOnTerrainFutureelde edin veyaArResolveAnchorOnTerrainCallbackkullanın. Eski sembolArEarth_resolveAndAcquireNewAnchorOnTerrain()kullanımdan kaldırıldı ve ARCore'un sonraki bir sürümünde kaldırılabilir. - Cloud Anchor'ları çözme:
ArResolveCloudAnchorFutureelde etmek içinArSession_resolveCloudAnchorAsync()'u veyaArResolveCloudAnchorCallback'u kullanın. Eski sembolArSession_resolveAndAcquireNewCloudAnchor()kullanımdan kaldırıldı ve ARCore'un sonraki bir sürümünde kaldırılabilir. - Cloud Anchor'ları barındırma:
ArSession_hostCloudAnchorAsync()kullanarakArHostCloudAnchorFutureelde edin veyaArHostCloudAnchorCallbackkullanın. Eski sembollerArSession_hostAndAcquireNewCloudAnchor()veArSession_hostAndAcquireNewCloudAnchorWithTtl()artık kullanılmıyor ve ARCore'un sonraki bir sürümünde kaldırılabilir. - APK kullanılabilirliğini kontrol edin: Geri çağırma kaydetmek için
ArCoreApk_checkAvailabilityAsync()kullanın. Eski simgeArCoreApk_checkAvailability()kullanımdan kaldırılmamıştır.
Unity (AR Foundation)
- Arazi bağlantılarını çözme:
ARAnchorManagerExtensions.ResolveAnchorOnTerrainAsync()kullanarakResolveAnchorOnTerrainPromiseelde edin. Eski sembolARAnchorManagerExtensions.ResolveAnchorOnTerrain()kullanımdan kaldırıldı ve ARCore'un sonraki bir sürümünde kaldırılabilir. - Bulut bağlantılarını çözme:
ResolveCloudAnchorPromiseelde etmek içinARAnchorManagerExtensions.ResolveCloudAnchorAsync()kullanın. Eski sembolARAnchorManagerExtensions.ResolveCloudAnchorId()kullanımdan kaldırıldı ve ARCore'un sonraki bir sürümünde kaldırılabilir. - Cloud Anchor'ları barındırma:
ARAnchorManagerExtensions.HostCloudAnchorAsync()kullanarakHostCloudAnchorPromiseelde edin. EskiARAnchorManagerExtensions.HostCloudAnchor()sembollerinin desteği sonlandırıldı ve ARCore'un sonraki bir sürümünde kaldırılabilir.
iOS
- Arazi bağlantılarını çözme:
GARSession.createAnchorWithCoordinate:altitudeAboveTerrain:eastUpSouthQAnchor:completionHandler:error:kullanarakGARCreateAnchorOnTerrainFutureelde edin. Eski sembolGARSession.createAnchorWithCoordinate:altitudeAboveTerrain:eastUpSouthQAnchor:error:kullanımdan kaldırıldı ve ARCore'un sonraki bir sürümünde kaldırılabilir. - Bulut bağlantılarını çözme:
GARResolveCloudAnchorFutureelde etmek içinGARSession.resolveCloudAnchorWithIdentifier:completionHandler:error:kullanın. Eski sembolGARSession.resolveCloudAnchorWithIdentifier:error:kullanımdan kaldırıldı ve ARCore'un sonraki bir sürümünde kaldırılabilir. - Cloud Anchor'ları barındırma:
GARSession.hostCloudAnchor:TTLDays:completionHandler:error:kullanarakGARHostCloudAnchorFutureelde edin. Eski sembollerGARSession.hostCloudAnchor:error:veGARSession.hostCloudAnchor:TTLDays:error:artık kullanılmıyor ve ARCore'un sonraki bir sürümünde kaldırılabilir.
ARCore v1.36.0 sürümündeki yenilikler
iOS'te Swift Package Manager desteği
iOS için ARCore SDK'sı artık Swift Package Manager'ı resmi olarak destekliyor. Swift Package Manager'ı kullanarak ARCore ile entegrasyon hakkında talimatlar için iOS uygulamanızda AR'yi etkinleştirme başlıklı makaleyi inceleyin.
ARCore v1.35.0 sürümündeki yenilikler
Coğrafi uzamsal duruş doğruluğu, yönü sapma ile değiştirir
Tüm coğrafi uzamsal pozlar artık yön doğruluğunun yerine sapma dönüşünün yönlendirme doğruluğunu gösteriyor.
- Java/Kotlin:
GeospatialPose.getHeading()yerineGeospatialPose.getEastUpSouthQuaternion(),GeospatialPose.getHeadingAccuracy()yerineGeospatialPose.getOrientationYawAccuracy()koyun. - C:
ArGeospatialPose_getHeading()yerineArGeospatialPose_getEastUpSouthQuaternion(),ArGeospatialPose_getHeadingAccuracy()yerineArGeospatialPose_getOrientationYawAccuracy()koyun. - iOS:
GARGeospatialTransform.headingyerineGARGeospatialTransform.eastUpSouthQTarget,GARGeospatialTransform.headingAccuracyyerineGARGeospatialTransform.orientationYawAccuracykoyun. - Unity:
GeospatialPose.HeadingyerineGeospatialPose.EunRotation,GeospatialPose.HeadingAccuracyyerineGeospatialPose.OrientationYawAccuracykoyun.
Ek değişiklikler ve güncellemeler
Diğer değişiklikler, hata düzeltmeleri ve performans iyileştirmeleri için sürüm notlarına bakın:
- Android için ARCore SDK'sının sürüm notları
- Android NDK için ARCore sürüm notları
- iOS için ARCore SDK'sının sürüm notları
- AR Foundation için ARCore Uzantıları sürüm notları
ARCore v1.34.0 sürümündeki yenilikler
Coğrafi uzamsal özelliklerin cihazın bulunduğu konumda kullanılıp kullanılamadığını kontrol edin.
Geospatial API artık çalışma zamanında belirtilen yatay konumda Görsel Konumlandırma Sistemi (VPS) kullanılabilirliğini kontrol edebilir. Bu API, etkin bir AR oturumu olmadan kullanılabilir. Örneğin, VPS yalnızca kullanılabilir olduğunda "AR'a girin" düğmesini göstermek için kullanılabilir.
- Java/Kotlin:
Session.checkVpsAvailabilityAsync() - C:
ArSession_checkVpsAvailabilityAsync() - iOS:
GARSession.checkVPSAvailabilityAtCoordinate:completionHandler: - Unity (AR Foundation):
AREarthManager.CheckVpsAvailability()
Coğrafi duruş yönü
Coğrafi uzamsal pozlar artık 3D uzaydaki yönlerini gösteriyor.
- Java/Kotlin:
feedbackGeospatialPose.getEastUpSouthQuaternion() - C:
ArEarth_getGeospatialPose() - iOS:
GARGeospatialTransform.eastUpSouthQTarget - Unity:
GeospatialPose.EunRotation()
Coğrafi konum duruşu dönüşümleri
Coğrafi uzamsal pozlar artık dünya uzayı (AR) pozlarına ve bu pozlardan dönüştürülebilir.
AR pozundan coğrafi konum pozu almak için:
- Java/Kotlin:
Earth.getGeospatialPose() - C:
ArEarth_getGeospatialPose() - iOS:
GARSession.geospatialTransformFromTransform:error: - Unity:
AREarthManager.Convert(Pose)
Coğrafi konum pozundan AR pozu almak için:
- Java/Kotlin:
Earth.getPose() - C:
ArEarth_getPose() - iOS:
GARSession.transformFromGeospatialCoordinate:altitude:eastUpSouthQTarget:error: - Unity:
AREarthManager.Convert(GeospatialPose)
Bu işlevlerden elde edilen coğrafi uzamsal pozların yön değeri sıfır olarak ayarlanır. Bunun yerine aşağıdakileri kullanın:
- Android (Java/Kotlin/C): Pozun EUS kuaterniyonu
- iOS: Pozun
eastUpSouthQTarget - Unity: Pozun
EunRotation
Ek değişiklikler ve güncellemeler
Diğer değişiklikler, hata düzeltmeleri ve performans iyileştirmeleri için sürüm notlarına bakın:
- Android için ARCore SDK'sının sürüm notları
- Android NDK için ARCore sürüm notları
- iOS için ARCore SDK'sının sürüm notları
- AR Foundation için ARCore Uzantıları sürüm notları
ARCore v1.33.0 sürümündeki yenilikler
Yeni Cloud Anchors uç noktası
- Cloud Anchors'ı kullanmak için artık desteği sonlandırılan eski ARCore Cloud Anchor API yerine ARCore API'yi etkinleştirmeniz gerekir. Eski uygulama sürümlerini desteklemek için geçiş sırasında her ikisini de etkinleştirebilirsiniz. ARCore SDK 1.32.0 ve önceki sürümleriyle oluşturulan uygulamalar eski API'yi, ARCore SDK 1.33.0 ve sonraki sürümleriyle oluşturulan uygulamalar ise yeni API'yi hedefler. Aşağıdakileri göz önünde bulundurun:
- Yeni API,
arcorecloudanchor.googleapis.comyerine alan adıarcore.googleapis.comkullanır. - API ile kısıtlanmış bir API anahtarı kullanıyorsanız ARCore API'ye izin vermeniz gerekir.
- ARCore Cloud Anchor Management API'ye arka uçtan istek gönderiyorsanız ARCore API'yi etkinleştirdikten sonra alan adını
arcore.googleapis.comolarak da değiştirmeniz gerekir. - Eski API/uç nokta, Ağustos 2023'e kadar desteklenmeye devam edecektir.
- Daha fazla bilgi için ARCore 1.33 Cloud Anchor uç nokta değişiklikleri başlıklı makaleyi inceleyin.
- Yeni API,
Arazi bağlantıları
- Geospatial Terrain anchor API, belirtilen yatay konumun arazisine göre yatay konumda ve yükseklikte bir bağlantı oluşturur.
Ek değişiklikler ve güncellemeler
Diğer değişiklikler, hata düzeltmeleri ve performans iyileştirmeleri için sürüm notlarına bakın:
- Android için ARCore SDK'sının sürüm notları
- Android NDK için ARCore sürüm notları
- iOS için ARCore SDK'sının sürüm notları
- AR Foundation için ARCore Uzantıları sürüm notları
ARCore v1.32.0 sürümündeki yenilikler
Bu sürümde yeni özellik yok.
Android ve Unity (AR Foundation) for Android
- ARCore'un
targetSdkVersionsürümü, Android API düzeyi 32'ye güncellendi. UygulamanıztargetSdkVersionbelirtmiyorsa manifest birleştirme nedeniyle uygulamanızıntargetSdkVersiondeğeri 32 olur.- Android SDK: Projenizin
build.gradleveyaAndroidManifest.xmliçindetargetSdkVersionbelirtmek, ARCore'untargetSdkVersiondeğerini geçersiz kılar. - Android için AR Foundation: Unity projenizin Project Settings > Player > Android > Other Settings bölümünde Target API Level (Hedef API Seviyesi) belirtmek, ARCore'un
targetSdkVersiondeğerini geçersiz kılar.
- Android SDK: Projenizin
Ek değişiklikler ve güncellemeler
Diğer değişiklikler, hata düzeltmeleri ve performans iyileştirmeleri için sürüm notlarına bakın:
- Android için ARCore SDK'sının sürüm notları
- Android NDK için ARCore sürüm notları
- iOS için ARCore SDK'sının sürüm notları
- AR Foundation için ARCore Uzantıları sürüm notları
ARCore v1.31.0 sürümündeki yenilikler
ARCore Geospatial API
Yeni ARCore Geospatial API, Google Earth 3D modellerinden ve Google Haritalar'daki Street View görüntü verilerinden yararlanarak uygulamanızda sürükleyici, küresel ölçekli ve konuma dayalı artırılmış gerçeklik deneyimleri sunmanızı sağlar.
Platforma özel geliştirici belgeleri ve yeni Geospatial API'yi kullanmaya başlamak için ARCore Geospatial API'ye Giriş başlıklı makaleyi inceleyin.
Uzun menzilli derinlik
ARCore Depth API artık daha uzun mesafeli derinlik algılamayı içerecek şekilde optimize edildi. Bu sayede, gösterilebilecek derinlik gözlemlerinin aralığı genişletildi. Derinlik görüntüsünün 16 bitinin tamamı kullanılır ve maksimum 65.535 milimetrelik bir aralık sağlanır. Daha önce yalnızca 13 bit dolduruluyordu ve 8.191 milimetre sınırı vardı.
Platforma özel geliştirici belgeleri için Derinlikte Yapılan Değişiklikler'i ve Derinlik API'sinde yapılan değişiklikleri inceleyin.
Platforma özgü notlar
Android
Yeni ARCore Geospatial API'leri
Java
Earth, Dünya'ya göre koordinatlarda yerelleştirme olanağı sunar.Earth.createAnchor()Dünya'ya göre belirtilen konumda ve yönde yeni birAnchoroluşturur.
Earth.EarthstateEarth'ünTrackingStatedahil olmak üzere mevcut durumunu açıklar.GeospatialPoseDünya'ya göre belirli bir konumu, yüksekliği ve pusula yönünü tanımlar.
C
ArEarthDünya'ya göre koordinatlarda yerelleştirme özelliği sunar.ArEarth_acquireNewAnchor()Dünya'ya göre belirtilen konumda ve yönde yeni birAnchoroluşturur.ArEarthStateArEarth'ünArTrackingStatedahil olmak üzere mevcut durumunu açıklar.
ArGeospatialPoseDünya'ya göre belirli bir konumu, yüksekliği ve pusula yönünü tanımlar.
Güncellenen ARCore Depth API'leri
Java
- Depth API işlev çağrıları değişti:
Frame.acquireDepthImageFrame.acquireDepthImage16Bitskullanıcısına haklar atanırken hata oluştu.Frame.acquireRawDepthImageFrame.acquireRawDepthImage16Bitskullanıcısına haklar atanırken hata oluştu.- Her iki çağrının çıkış resim biçimleri
android.graphics.ImageFormat#DEPTH16olarak değiştirildi.android.hardware.HardwareBuffer#D_16 - Derinlik, milimetre birimleriyle 16 bitlik bir tam sayı olarak gösterilmeye devam eder ancak artık derinliği göstermek için 16 bitin tamamı kullanılır. Bu sayede, ifade edilebilen maksimum aralık 8.191 mm'den 65.535 mm'ye çıkar.
- Depth API işlev çağrıları
Frame.acquireDepthImageveFrame.acquireRawDepthImagekullanımdan kaldırıldı. Lütfen bunun yerineFrame.acquireDepthImage16BitsveFrame.acquireRawDepthImage16Bitspolitikalarını kullanın.
- Depth API işlev çağrıları değişti:
C
- Depth API işlev çağrıları değişti:
ArFrame_acquireDepthImageArFrame_acquireDepthImage16Bitskullanıcısına haklar atanırken hata oluştu.ArFrame_acquireRawDepthImage-ArFrame_acquireRawDepthImage16Bits- Her iki görüşmenin çıkış resim biçimleri
AR_IMAGE_FORMAT_DEPTH16olarak değiştirildi.AR_IMAGE_FORMAT_D_16 - Derinlik, milimetre birimleriyle 16 bitlik bir tam sayı olarak gösterilmeye devam eder ancak artık derinliği göstermek için 16 bitin tamamı kullanılır. Bu sayede, ifade edilebilen maksimum aralık 8.191 mm'den 65.535 mm'ye çıkar.
- Depth API işlev çağrıları
ArFrame_acquireDepthImageveArFrame_acquireRawDepthImagekullanımdan kaldırıldı. Bunun yerine lütfenArFrame_acquireDepthImage16BitsveArFrame_acquireRawDepthImage16Bitspolitikalarını kullanın.
- Depth API işlev çağrıları değişti:
Unity (AR Foundation)
Yeni ARCore Geospatial API'leri:
AREarthManagerDünya'ya göre koordinatlarda yerelleştirme özelliği sunar.EarthTrackingStateEn son kare için Earth'ün izleme durumunu alır.EarthStateDünya'daki hata koşullarını korur.
GeospatialPoseDünya'ya göre belirli bir konumu, yüksekliği ve pusula yönünü tanımlar.ARGeospatialAnchorsahnenizdeki oyun nesneleri için bir sabitleme noktası sağlar. Bu nokta, Dünya'ya göre konum ve yönlendirme belirtilerek tanımlanır.
iOS
Yeni ARCore Geospatial API'leri:
GAREarthDünyaya göre yerelleştirme sağlar.GAREarthState.earthStateHata durumlarını ve koşullarını yönetir.GAREarthState.trackingStateCoğrafi veriler için gerekli olan izleme durumunu korur.
GARGeospatialTransformKonum, yön, yükseklik ve doğruluk tahminleri dahil olmak üzere küresel bir dönüşümün gösterimi.GARSession.createAnchorWithCoordinate:altitude:eastUpSouthQAnchor:error:Dünyaya göre belirtilen konumda ve yönde bir coğrafi konum sabitleyicisi oluşturur.
Diğer değişiklikler
Diğer değişiklikler, hata düzeltmeleri ve performans iyileştirmeleri için sürüm notlarına bakın:
- Android için ARCore SDK'sının sürüm notları
- Android NDK için ARCore sürüm notları
- iOS için ARCore SDK'sının sürüm notları
- AR Foundation için ARCore Uzantıları sürüm notları
ARCore v1.30.0 sürümündeki yenilikler
Bu sürümde yeni özellik yok.
Android
@NonNullve@Nullableile açıklama eklenmiş API dönüş değerleri.- Örnekleri oluşturmak için kullanılan derleme aracı sürümleri güncellendi: Gradle 7.0.2'ye, Android Gradle eklentisi ise 7.0.4'e yükseltildi. Mevcut ARCore uygulamaları için bu araçların yükseltilmesi gerekmez. Yeni özellikler, bilinen sorunlar ve uyumsuzluk bilgileri için Android Gradle eklentisiyle ilgili Android belgelerine bakın.
Unity (AR Foundation)
Yeni bir
arcore-unity-extensions-without-edm4u.tgzsürümü eklendi. Bu sürüm varyantı, External Dependency Manager for Unity gibi harici bağımlılıkları paketlemez ve EDM'ye yükseltmelere olanak tanır. Bu lite sürümü kullanmak, Firebase kitaplıklarını kullanırken uyumsuzlukları çözebilir. Başlamak için AR Foundation için ARCore Uzantıları'nın yükleme talimatlarına göz atın.2021.2 ve sonraki sürümleri daha iyi desteklemek için ExternalDependencyManager, v1.2.168 sürümüne yükseltildi. Ayrıntılar için EDM'nin değişiklik günlüğüne bakın.
ARCore oturumunun, oturum yapılandırmasında değişiklik olmamasına rağmen her karede yapılandırılmasına ve bunun sonucunda FPS düşüşüne neden olan sorun düzeltildi.
iOS
- Çeşitli hata düzeltmeleri ve performans iyileştirmeleri.
ARCore v1.29.0 sürümündeki yenilikler
Bu sürümde yeni özellik yok.
Android
- hello_ar_java ve hello_ar_kotlin:
SCREENSPACE_WITH_APPROXIMATE_DISTANCEkullanılarak yerleştirilen bir nesnenin rengi, Anında Yerleştirme kullanılarak yerleştirilen nesneleri daha iyi ayırt etmek için değiştirildi. - persistent_cloud_anchor_java: Örneğe eksik bir derleme bağımlılığı eklendi. Proje doğru şekilde ayarlanmış olsa bile herhangi bir bağlantı noktasının barındırılmasının
CloudAnchorState ERROR_NOT_AUTHORIZEDdurumuna sahip olmasına neden olan hata düzeltildi.
Unity (AR Foundation)
- ARCore Uzantıları paketi, yüklenen AR Foundation sürümünün ARKit XR Plugin sürümüyle uyumlu olmasını sağlamak için artık ARKit XR Plugin'e bağlıdır. Bu düzeltme, ARCore Extensions'ı Unity 2019.x'e yüklerken ve ARKit XR eklentisini etkinleştirirken oluşan derleme hatasını düzeltir.
- ARCore Uzantıları proje ayarları, Project Settings > XR > ARCore Extensions'dan Project Settings > XR Plug-in Management > ARCore Extensions'a taşındı.
ARCoreExtensionsConfig,ARCoreExtensionsCameraConfigFilter,ARCoreRecordingConfig, Oluştur > XR > ARCore Uzantıları'ndan Oluştur > XR menüsüne taşındı.
iOS
- Çeşitli hata düzeltmeleri ve performans iyileştirmeleri.
Sürüm notlarının tamamı
- Android için ARCore SDK'sının tüm sürüm notları
- Android NDK için ARCore'un tam sürüm notları
- iOS için ARCore SDK'sının tüm sürüm notları
- AR Foundation için ARCore Uzantıları sürüm notları
ARCore v1.28.0 sürümündeki yenilikler
- Kasım 2022'den itibaren, artırılmış gerçeklik özellikli uygulamalar NDK resimlerini veya resim meta verilerini artık edinemeyecek. Etkilenen SDK sürümleri, çağrılan işleve bağlıdır. Daha fazla bilgi için desteği sonlandırma duyurusuna bakın.
- C:
ArImage_getNdkImage()veArImage_getNdkCameraMetadata()için yapılan çağrılar,AImageveACameraMetadatanesneleri için her zamannullptrdeğerini döndürür. - Java:
Frame#acquireCameraImage()tarafından döndürülenImagenesnesi0x0piksel boyutunda olur.Frame#getImageMetadata()'a yapılan çağrılar her zamanIllegalArgumentExceptionoluşturur. - Unity (AR Foundation): AR Foundation 2.1 (Unity 2019 LTS) kullanılırken
XRCameraSubsystem.TryGetLatestImage(out XRCameraImage)çağrıları her zamanfalsedeğerini döndürür. AR Foundation 4.x ve sonraki sürümler bu durumdan etkilenmez.XRCameraSubsystem.TryGetLatestImage(out XRCameraImage)çağrıları normal şekilde çalışır. - Unity için ARCore SDK'sı (desteği sonlandırıldı):
Frame.CameraImage.AcquireCameraImageBytes()çağrıları0x0piksel boyutunda olur.Frame.CameraMetadata.GetAllCameraMetadataTags()numarasına yapılan aramalar boş birList<CameraMetadataTag>döndürür.
- C:
- Java:
ArImage#getCropRect()artık tam boyutlu bir kırpma dikdörtgeni döndürüyor. Yani, resimdeki tüm pikseller geçerli. Daha fazla bilgi içinandroid.media.Image#getCropRect()sayfasına bakın.
ARCore v1.27.0 sürümündeki yenilikler
Bu sürümde yeni özellik yok. Çeşitli hata düzeltmeleri ve performans iyileştirmeleri için aşağıdaki sürüm notlarına bakın.
- Android için ARCore SDK'sının tüm sürüm notları
- Android NDK için ARCore'un tam sürüm notları
- iOS için ARCore SDK'sının tüm sürüm notları
- AR Foundation için ARCore Uzantıları sürüm notları
Bu sürümde çeşitli hata düzeltmelerinin yanı sıra aşağıdakiler de yer almaktadır.
Kotlin'deki örnek uygulamalar
Kotlin kullanırken en iyi uygulamaları göstermek için hello_ar_kotlin eklendi.
Daha fazla bilgi için Android için Hızlı Başlangıç kılavuzuna bakın.
Bir resim sınıflandırma modelinin ARCore ile nasıl kullanılabileceğini göstermek için ml_kotlin eklendi.
Daha fazla bilgi için ARCore'u makine öğrenimi modelleri için giriş olarak kullanma başlıklı makaleyi inceleyin.
ARCore v1.26.0 sürümündeki yenilikler
Bu sürümde aşağıdaki önemli değişiklikler yapıldı:
- URI'ler artık Kayıt ve Oynatma'daki veri kümeleri için desteklenmektedir.
Ek değişiklikler ve güncellemeler
Ek hata düzeltmeleri ve diğer zarar veren değişiklikler için aşağıdaki sürüm notlarına bakın.
- Android için ARCore SDK'sının tüm sürüm notları
- Android NDK için ARCore'un tam sürüm notları
- iOS için ARCore SDK'sının tüm sürüm notları
- AR Foundation için ARCore Uzantıları sürüm notları
ARCore v1.25.0 sürümündeki yenilikler
Bu sürümde yeni özellik yok. Çeşitli hata düzeltmeleri ve performans iyileştirmeleri için aşağıdaki sürüm notlarına bakın.
- Android için ARCore SDK'sının tüm sürüm notları
- Android NDK için ARCore'un tam sürüm notları
- iOS için ARCore SDK'sının tüm sürüm notları
- Unity için ARCore SDK'sının tam sürüm notları
- AR Foundation için ARCore Uzantıları sürüm notları
ARCore v1.24.0 sürümündeki yenilikler
Bu sürümde aşağıdaki önemli değişiklikler yapıldı:
- Görüntü alanı filtreleme olmadan derinlik görüntüsü sağlayan yeni bir Raw Depth API
- Kayıt ve Oynatma API'sine özel veri parçası kaydı özelliği eklendi.
- Derinlik isabet testleri yapabilme
Ham Derinlik
Raw Depth API, tam Depth API verilerinden daha yüksek doğruluğa sahip bir kamera görüntüsü için derinlik verileri sağlar ancak her zaman her pikseli kapsamaz. Ham derinlik görüntüleri, eşleşme güveni görüntüleriyle birlikte daha fazla işlenebilir. Böylece uygulamalar, yalnızca kendi kullanım alanları için yeterli doğruluğa sahip derinlik verilerini kullanabilir.
Geliştirici kılavuzları:
Özel kanal kaydı
Kayıt ve Oynatma API'sindeki yeni özel veri parçası özelliği, kayıt sırasında bir ARCore çerçevesine özel veriler eklemenize ve oynatma sırasında aynı verileri çerçeveden almanıza olanak tanır.
Geliştirici kılavuzları:
Derinlik isabet testleri
Daha önce, isabet testleri yalnızca algılanan düzlemlerde yapılabiliyordu. Bu da konumları büyük ve düz yüzeylerle sınırlıyordu. Derinlik isabet testleri, düzlemsel olmayan ve dokusu az olan yüzeylerde bile daha doğru isabet sonuçları sağlamak için hem düzgün hem de ham derinlik bilgilerinden yararlanır.
Geliştirici kılavuzları:
Ek değişiklikler ve güncellemeler
Ek hata düzeltmeleri ve diğer zarar veren değişiklikler için aşağıdaki sürüm notlarına bakın.
- Android için ARCore SDK'sının tüm sürüm notları
- Android NDK için ARCore'un tam sürüm notları
- iOS için ARCore SDK'sının tüm sürüm notları
- Unity için ARCore SDK'sının tam sürüm notları
- AR Foundation için ARCore Uzantıları sürüm notları
ARCore v1.23.0 sürümündeki yenilikler
Çift kamera desteği beklemede
Çift kamera desteği önümüzdeki haftalarda kullanıma sunulacak. Daha fazla bilgi için desteklenen cihazlar sayfasına bakın.
Yeni hata ayıklama araçları
Geliştiriciler, yayın amaçlı bir intent göndererek şunları etkinleştirebilir:
ARCore API çağrısı, Android hata ayıklama günlüğüne kaydediliyor.
ARCore performans yer paylaşımı
Cloud Anchor'ları barındırma ve çözme
ARCore SDK 1.11.0 veya önceki sürümleri kullanılarak oluşturulan AR özellikli uygulamalar artık Cloud Anchor'ları barındıramaz veya çözümleyemez.
C:
ArSession_hostAndAcquireNewCloudAnchorveArSession_resolveAndAcquireNewCloudAnchortarafından döndürülen Cloud Anchor'ların durumu her zamanAR_CLOUD_ANCHOR_STATE_ERROR_INTERNALolur.Java:
Session.hostCloudAnchor(Anchor)veSession.resolveCloudAnchor(String)tarafından döndürülen Cloud Anchors her zamanAnchor.CloudAnchorState.ERROR_INTERNALdurumunda olur.Unity:
XPSession.CreateCloudAnchor(Anchor)veXPSession.ResolveCloudAnchor(string)tarafından döndürülen Cloud Anchors'lar her zamanCloudServiceResponse.ErrorInternaldurumuna sahip olur.
ARCore SDK 1.12.0 veya sonraki sürümlerle oluşturulan uygulamalar bu durumdan etkilenmez. ARCore Cloud Anchor API'sinin kullanımı kullanımdan kaldırma politikası kapsamındadır.
Ek değişiklikler ve güncellemeler
Ek hata düzeltmeleri ve diğer önemli değişiklikler için aşağıdaki sürüm notlarına bakın.
ARCore v1.22.0 sürümündeki yenilikler
Bu sürümde, ARCore Extensions for AR Foundation için yeni Kayıt ve Oynatma API'leri ile Kamera Yapılandırma Filtresi API'leri eklenmiştir. Ayrıntılar için ARCore Uzantıları ile ilgili tüm sürüm notlarına bakın.
Ek değişiklikler ve güncellemeler
Ek hata düzeltmeleri ve diğer önemli değişiklikler için aşağıdaki sürüm notlarına bakın.
ARCore v1.21.0 sürümündeki yenilikler
Bu sürümde Android, Android NDK ve Unity için yeni Kayıt ve Oynatma API'leri ekleniyor.
Kaydetme ve Oynatma
Kayıt ve Oynatma API'leri ile belirli bir ortamda video ve AR verilerini bir kez kaydedebilir, bu içeriği test amacıyla canlı kamera oturumunun yerine kullanabilirsiniz. ARCore, kaydedilen oturumları cihazda birden fazla video parçası ve diğer çeşitli verileri içeren MP4 dosyalarına kaydeder. Ardından, uygulamanızı canlı kamera oturumu yerine bu verileri kullanacak şekilde yönlendirebilirsiniz. Bu sayede, sahaya geri dönmek zorunda kalmadan farklı AR efektlerini denemek için içeriği süresiz olarak tekrar oynatabilirsiniz.
Daha ayrıntılı bilgi için:
Java:
C:
Unity:
ARCore v1.20.0 sürümündeki yenilikler
Bu sürümde aşağıdaki önemli değişiklikler yapıldı:
Kalıcı Cloud Anchor'lar için yeni destek.
Android ve Android NDK için güncellenen görüntü meta verileri özellikleri.
Unity 2018.4 veya sonraki sürümlerinde ARCore SDK for Unity (1.19 veya sonraki sürümler) ya da AR Foundation için ARCore Uzantıları'nı desteklemek üzere Gradle sürümünün 5.6.4 veya sonraki sürümlerini gerektiren yeni rehberlik.
Kalıcı Cloud Anchors için yeni destek
ARCore v1.20'den önce, Cloud Anchor'lar ilk kez barındırıldıktan sonra en fazla 24 saat boyunca çözümlenebiliyordu. Kalıcı Cloud Anchor'lar sayesinde artık bir ila 365 gün arasında geçerlilik süresine (TTL) sahip bir Cloud Anchor oluşturabilirsiniz. Cloud Anchor Management API'yi kullanarak, barındırıldıktan sonra da bağlantı noktasının kullanım ömrünü uzatabilirsiniz.
Kalıcı Cloud Anchors kullanımı, yeni Cloud Anchors desteğini sonlandırma politikası kapsamındadır.
C: Geliştirici kılavuzu,
ArSession_hostAndAcquireNewCloudAnchorWithTtl, veArSession_estimateFeatureMapQualityForHosting.Java: Geliştirici kılavuzu,
hostCloudAnchorWithTtlveestimateFeatureMapQualityForHosting.iOS: Geliştirici kılavuzu,
hostCloudAnchor:TTLDays:error:veestimateFeatureMapQualityForHosting:.AR Foundation için ARCore Uzantıları: Android geliştirici kılavuzu, iOS geliştirici kılavuzu,
ARAnchorManager.HostCloudAnchor(ARAnchor, int),ARAnchorManager.SetAuthToken(string), veARAnchorManager.EstimateFeatureMapQualityForHosting(Pose).Android'i hedefleyen Unity: Geliştirici kılavuzu,
XPSession.CreateCloudAnchor(Anchor, int)veXPSession.EstimateFeatureMapQualityForHosting(Pose).Unity'de iOS'i hedefleme: Geliştirici kılavuzu,
XPSession.SetAuthToken(string)veXPSession.CreateCloudAnchor(UnityARUserAnchorComponent, int).
Ek değişiklikler ve güncellemeler
Ek hata düzeltmeleri ve diğer önemli değişiklikler için aşağıdaki sürüm notlarına bakın.
ARCore v1.19.0 sürümündeki yenilikler
Bu sürümde aşağıdaki önemli değişiklikler yapıldı:
- Android, Android NDK ve Unity için yeni Instant Placement API.
- Unity ile Android 11 için geliştirme yapmayla ilgili yeni rehberlik.
Anında Yerleştirme
Anında Yerleştirme API'si, kullanıcının ARCore'un yüzey geometrisini algılamasını beklemeden ekrana bir AR nesnesi yerleştirmesine olanak tanır. Kullanıcı ortamda hareket ettikçe nesne yerleşimi gerçek zamanlı olarak iyileştirilir. ARCore, AR nesnesinin yerleştirildiği bölgede doğru pozu algıladığında beyaz nesne otomatik olarak pozu doğru şekilde yansıtacak şekilde güncellenir ve opak hale gelir.
Aşağıdaki klipte, gerçek bir masa üzerinde sanal bir Android figürü gösterilmektedir. Şekil, ilk yerleştirildiğinde beyaz ve çok daha küçüktür. ARCore, sahne boyutlarıyla ilgili hesaplamalarını iyileştirdikten sonra şekil daha doğru bir konuma atlar. Bu durum, nesnenin algılanan "boyutunda" farklılığa neden olabilir.
Daha ayrıntılı bilgi için:
Android:
Android NDK:
Unity:
ARCore v1.18.0 sürümündeki yenilikler
Bu sürümde aşağıdaki önemli değişiklikler yapıldı:
- Android, Android NDK, ve Unity için yeni Depth API.
- Artırılmış Yüz öğeleri oluşturma ve bunları Android Studio'ya aktarmayla ilgili yeni rehberlik.
- Depth API,
4.1.0-preview.2'da hemAR Foundationhem deARCore XR Pluginiçin desteklenecektir.
Depth API
Derinlik destekli cihazlarda Derinlik API'si, derinlik haritaları oluşturmak için ARCore destekli cihazın RGB kamerasını veya varsa etkin derinlik sensörünü kullanır. Ardından, sanal nesnelerin gerçek dünya nesnelerinin önünde veya arkasında doğru şekilde görünmesini sağlamak için derinlik haritası tarafından sağlanan piksel başına derinliği kullanabilirsiniz. Bu sayede, kullanıcılar için etkileyici ve gerçekçi deneyimler sunabilirsiniz.
Örneğin, aşağıdaki resimlerde bir kapının yanında sandık bulunan gerçek bir alanda sanal bir Android figürü gösterilmektedir. Derinlik API'si, gövdenin kenarının arkasındaki figürü düzgün şekilde kapatıyor.
Daha ayrıntılı bilgi için:
Android:
Android NDK:
Unity:
ARCore v1.17.0 sürümündeki yenilikler
Android için ARCore SDK'sında dikkat çekici
Birden fazla kamera karesinin arabelleğe alınmasına olanak tanıyan yeni yöntemler eklendi. Çok iş parçacıklı oluşturma gibi diğer tekniklerle birlikte bu yöntem, kare hızlarındaki değişkenliği azaltmak için kullanılabilir.
Eksik olan derinlik sensörü kullanımı ve hedef FPS alıcıları eklendi:
Android için Android SDK'sının tam sürüm notlarını da inceleyin.
Unity için ARCore SDK'daki önemli noktalar
- Unity 2018.2 veya sonraki sürümlerde çok iş parçacıklı oluşturma desteği eklendi. Bu destek, çoğu durumda performansı artırır ve kare hızlarındaki değişkenliği azaltmaya yardımcı olabilir. Bu, Project Settings > Player > Android > Other Settings > Multithreaded Rendering bölümünde bulunan bir Unity proje ayarıdır. Ayrıntılar için Geliştirici Kılavuzu'na bakın.
- Belirli ARCore oturumu hata durumlarını belirtmek için
SessionStatus.ErrorCameraNotAvailableveSessionStatus.ErrorIllegalStateeklendi.
Ayrıca Unity için ARCore SDK'nın tüm sürüm notlarına da bakın.
iOS için ARCore SDK'sında dikkat çekenler
Cloud Anchors SDK'sının ikili boyutu önemli ölçüde küçültüldü.
Artık Artırılmış Yüzler için bit kodu desteklenmektedir.
iOS için ARCore SDK'sının tüm sürüm notlarına da göz atın.
ARCore v1.16.0 sürümündeki yenilikler
Android için ARCore SDK'sı ve Android için Sceneform SDK'sında dikkat çekici
Bu sürümde aşağıdaki önemli değişiklikler yapıldı:
- Çoğu cihaz artık, cihazın varsayılan GPU doku çözünürlüğünden daha düşük GPU doku çözünürlüklerine sahip ek desteklenen kamera yapılandırmaları döndürüyor.
Ayrıntılar için ARCore destekli cihazlar sayfasına bakın.
Bu genişletilmiş GPU çözünürlükleri,
getSupportedCameraConfigs(CameraConfigFilter)API aracılığıyla kullanılabilir.
Şuna da bakabilirsiniz:
AR Foundation için ARCore Uzantıları'ndaki önemli noktalar
Bu sürümde aşağıdaki önemli değişiklikler yapıldı:
AR Foundation'ın
XRCameraConfiguration, istediğiniz ölçütlere göre uygun kamera yapılandırmasını seçmenize olanak tanıyan yöntemlerle genişletildi. Bu yöntemler arasında GetTextureDimensions(), GetFPSRange() ve GetDepthSensorUsages() yer alır. Ayrıntılı talimatları inceleyin.ARCore Uzantıları için önerilen minimum sürüm artık Unity 2019.3.0f6'dır. AR Foundation 3.1.0-preview.6 için Unity 2019.3 veya sonraki bir sürüm gereklidir.
Unity artık platformlar arası AR API'sinde Anchor, Cloud Anchor ve Cloud Anchor ID terimlerini kullanıyor. ARCore Uzantıları dokümanları bu değişikliği yansıtacak şekilde güncellendi.
Şuna da bakabilirsiniz:
Unity için ARCore SDK'daki önemli noktalar
Bu sürümde aşağıdaki önemli değişiklik yapıldı:
- Çoğu cihaz artık, cihazın varsayılan GPU doku çözünürlüğünden daha düşük GPU doku çözünürlüklerine sahip ek desteklenen kamera yapılandırmaları döndürüyor. (Ayrıntılar için ARCore destekli cihazlar sayfasına bakın.) Bu genişletilmiş GPU çözünürlükleri, ARCoreCameraConfigFilter API aracılığıyla kullanılabilir.
Şuna da bakabilirsiniz:
Unity için ARCore SDK'sının tam sürüm notları
ARCore v1.15.0 sürümündeki yenilikler
AR Foundation için ARCore Uzantıları'ndaki önemli noktalar
Bu sürümde aşağıdaki önemli değişiklikler yapıldı.
Hem Android hem de iOS için ortak artırılmış gerçeklik deneyimleri oluşturmayı gösteren CloudAnchors örneği eklendi. Android veya iOS talimatlarını inceleyin.
ARCore Uzantıları ile kullanılması önerilen minimum sürüm artık Unity 2019.2.17f1'dir.
ARCore Uzantıları'nın tam sürüm notları
Unity için ARCore SDK'daki önemli noktalar
Bu sürümde aşağıdaki bilinen sorunlar vardır.
Anlık Önizleme, Android 9 ve USB 3 kablosu kullanılırken Unity'nin donmasına neden olabilir. Bu sorunu düzeltmek için Android 10'a güncelleyin veya USB 2 kablosu kullanın.
Unity'nin oyun görünümü çözünürlüğü çok yüksek olduğunda Anlık Önizleme cihazda görüntülenemeyebilir. Bu sorunu düzeltmek için Unity'nin oyun görünümü çözünürlüğünü Editor'da düşürün.
Unity için ARCore SDK'sının tam sürüm notları
Ek değişiklikler
Ek hata düzeltmeleri ve diğer önemli değişiklikler için aşağıdaki sürüm notlarına bakın.
ARCore v1.14.0 sürümündeki yenilikler
Bu sürümde aşağıdaki önemli değişiklikler yapıldı.
Bir uygulama, cihazdaki başka bir uygulamaya kamerayı geçici olarak bıraktığında izleme hatasının nedeni artık daha ayrıntılı olarak belirtiliyor:
Android:
TrackingFailureReasonNONEyerineCAMERA_UNAVAILABLEolur.Android NDK:
ArTrackingFailureReasons,AR_TRACKING_FAILURE_REASON_NONEyerineAR_TRACKING_FAILURE_REASON_CAMERA_UNAVAILABLE.Unity:
Session.LostTrackingReasonNoneyerineLostTrackingReason.CameraUnavailable.
Google, Google Gizlilik Politikası ve Google API'leri Hizmet Şartları uyarınca ARCore Uzantıları paketini kullanımınızdan veri toplar ve bu verileri işler. Bu özelliği devre dışı bırakabilirsiniz.
ARCore v1.13.0 sürümündeki yenilikler
Bu sürümde aşağıdaki önemli değişiklikler yapıldı.
Unity'nin AR Foundation'ı için ARCore Uzantıları'nı kullanarak Cloud Anchor'lı iOS uygulamaları oluşturma desteği.
Ek hata düzeltmeleri ve diğer önemli değişiklikler için aşağıdaki sürüm notlarına bakın.
ARCore v1.12.0 sürümündeki yenilikler
Bu sürümde aşağıdaki değişiklikler yapıldı:
Artırılmış Yüzler özelliği iOS'e eklendi. Daha fazla bilgi için bu genel bakış, hızlı başlangıç ve geliştirici kılavuzuna bakın.
Cloud Anchors ile Android uygulamaları oluşturmak için Unity'nin AR Foundation'ında ARCore Extensions'ı kullanma desteği.
Cloud Anchors'da aşağıdaki değişiklikler yapıldı:
- ARCore SDK'larının 1.12 veya sonraki sürümlerinin kullanımıyla ilgili güncellenen gizlilik şartlarımıza uymak için aşağıdaki metni ve daha fazla bilgi edinmek üzere bir bağlantıyı bildirim ekranına ekleyerek uygulamanızda Cloud Anchors kullanımını belirgin bir şekilde açıklamanız gerekir: "Google, bu oturumu desteklemek için kameranızdan gelen görsel verileri işler." Bunu, Cloud Anchor örnek uygulamalarımızda bulunan önerilen kullanıcı bildirimi akışını uygulayarak yapabilirsiniz.
Daha fazla bilgi için Kullanıcı gizliliği şartları başlıklı makaleyi inceleyin.
Cloud Anchor'lar hakkında daha fazla bilgi için:
Android:
Android NDK:
iOS:
Unity:
ARCore Uzantıları:
ARCore v1.11.0 sürümündeki yenilikler
Bu sürümde aşağıdaki değişiklikler yapıldı:
ARCore hizmetinin adı AR için Google Play Hizmetleri olarak değiştirildi. Google Play cihazlarında artık Google Play Hizmetleri kapsamında dağıtılmaktadır.
ARCore'un kamera yapılandırmaları, desteklenen cihazlarda 60 FPS'yi hedefler ve derinlik sensörü olan cihazlarda bu sensörün kullanılmasını önceliklendirir. Kamera yakalama kare hızını 30 fps ile sınırlamak, ARCore'un derinlik sensörü kullanmasını önlemek veya her iki seçeneğe göre filtreleme yapmak için yeni kamera yapılandırma filtrelerini kullanabilirsiniz.
Kamera yapılandırmaları hakkında daha fazla bilgi için:
Android:
Android NDK:
Unity:
ARCore v1.10.0 sürümündeki yenilikler
Bu sürüm, Android, Android NDK ve Unity için Işık Tahmini API'sine yeni Environmental HDR ışık tahmini özellikleri ekler.
Bu API'ler, giriş kamera görüntüsünü analiz etmek ve ortam ışığını tahmin etmek için makine öğrenimini kullanır. Bu ışıklandırma tahmini verilerini kullanarak, birincil yönlü ışık, gölgeler, ortam ışığı, parlak vurgular ve sanal nesnelerdeki yansımalar dahil olmak üzere son derece gerçekçi bir ışıklandırma oluşturabilirsiniz. Sonuç olarak daha gerçekçi bir sanal içerik elde edilir.
Daha ayrıntılı bilgi için:
Android:
Android NDK:
Unity:
ARCore v1.9.0 sürümündeki yenilikler
Android için ARCore SDK'sında yenilikler
Bu sürümde aşağıdaki yeni API'ler ve özellikler eklenmiştir:
Scene Viewer, web sitenizdeki AR deneyimlerini etkinleştiren etkileyici bir görüntüleyicidir. Bu özellik, Android mobil cihaz kullanıcılarının web'de barındırılan 3D modelleri kendi ortamlarına kolayca yerleştirmesine, görüntülemesine ve bu modellerle etkileşimde bulunmasına olanak tanır.
Yeni Artırılmış Görüntüler özellikleri:
ARCore artık hareketli artırılmış görüntüleri izliyor. Hareketli resimlere örnek olarak, geçen bir otobüsün üzerindeki reklam veya kullanıcının elini hareket ettirirken tuttuğu düz bir nesnenin üzerindeki resim verilebilir.
Bir resim algılandıktan sonra ARCore, resim geçici olarak kamera görünümünün dışına çıksa bile resmin konumunu ve yönünü izlemeye devam edebilir.
Artırılmış görüntünün şu anda kamera tarafından izlenip izlenmediğini (
FULL_TRACKING) veya son bilinen konumuna göre izlenip izlenmediğini (LAST_KNOWN_POSE) belirlemek içinAugmentedImage#getTrackingMethod()(Java) ya daArAugmentedImage_getTrackingMethod()(NDK) kullanın.
Cloud Anchors dokümanlarında artık çapaların nasıl barındırıldığı ve çözümlendiği hakkında daha ayrıntılı bir açıklama yer alıyor.
Unity için ARCore SDK'sındaki yenilikler
Yeni Artırılmış Görüntüler özellikleri:
ARCore artık hareketli artırılmış görüntüleri izliyor. Hareketli resimlere örnek olarak geçen bir otobüsün üzerindeki reklam veya kullanıcının hareket ettirdiği düz bir nesnenin üzerindeki resim verilebilir.
Bir resim algılandıktan sonra ARCore, resim geçici olarak kamera görünümünün dışına çıksa bile resmin konumunu ve yönünü izlemeye devam edebilir.
Yeni
AugmentedImage.GetTrackingMethod()API, uygulamanızın Artırılmış görüntünün şu anda kamera tarafından izlenip izlenmediğini (FullTracking) veya son bilinen konumuna göre izlenip izlenmediğini (LastKnownPose) belirlemesini sağlar.
Cloud Anchors dokümanlarında artık çapaların nasıl barındırıldığı ve çözümlendiği hakkında daha ayrıntılı bir açıklama yer alıyor.
iOS için ARCore SDK'sındaki yenilikler
Bu cihazlar için destek:
Beşinci nesil iPad Mini
Üçüncü nesil iPad Air
Cloud Anchors dokümanlarında artık çapaların nasıl barındırıldığı ve çözümlendiği hakkında daha ayrıntılı bir açıklama yer alıyor.

