Maj 2022 r. (ARCore SDK w wersji 1.31) zmienia się na Depth

Zmiany opisane w tym dokumencie dotyczą tylko aplikacji skompilowanych za pomocą pakietu ARCore SDK w wersji 1.31 lub nowszej. Aplikacje skompilowane za pomocą starszej wersji ARCore nie będą objęte tymi zmianami.

W ramach wersji 1.31 z maja 2022 r. maksymalny zasięg głębi ARCore został zwiększony z 8,191 metra do 65,535 metra. Interfejs Depth API używa teraz wszystkich 16 bitów na piksel do reprezentowania głębi, podczas gdy wcześniej do wartości głębi używano tylko 13 bitów. Aplikacje korzystające z tych metod w starszych pakietach ARCore SDK będą nadal działać w poprzednim zakresie głębi, ale zalecamy zaktualizowanie ich w bazie kodu, aby poprawić ich działanie.

Zmiany dotyczące konkretnych platform

Android (Kotlin/Java)

Poprzednie nazwy metod i funkcje Nowe nazwy metod i funkcje
Maksymalny zasięg 8,191 metra Maksymalny zasięg 65,535 metra
Frame.acquireDepthImage() Frame.acquireDepthImage16Bits()
Frame.acquireRawDepthImage() Frame.acquireRawDepthImage16Bits()
Image.getFormat() zwraca ImageFormat.DEPTH16 Image.getFormat() zwraca HardwareBuffer.D_16

Android NDK (C)

Poprzednie nazwy metod i funkcje Nowe nazwy metod i funkcje
Maksymalny zasięg 8,191 metra Maksymalny zasięg 65,535 metra
ArFrame_acquireDepthImage() ArFrame_acquireDepthImage16Bits()
ArFrame_acquireRawDepthImage() ArFrame_acquireRawDepthImage16Bits()
ArImage_getFormat() zwraca AR_IMAGE_FORMAT_DEPTH16 ArImage_getFormat() zwraca AR_IMAGE_FORMAT_D_16

Unity (AR Foundation)

Wszystkie zmiany są obsługiwane przez AR Foundation. Podczas tworzenia za pomocą rozszerzeń ARCore dla AR Foundation w wersji 1.31 lub nowszej funkcja AROcclusionManager.TryAcquireEnvironmentDepthCpuImage zwraca obrazy z nowym maksymalnym zasięgiem 65, 535 metra.