Nowe, ważne zmiany w ARCore.
Nowości w ARCore w wersji 1.45.0
Interfejs Flash Mode API
ARCore umożliwia teraz włączanie trybu latarki, z perspektywy człowieka występującego w ciemnym otoczeniu.
Android (Kotlin/Java)
Config.FlashMode
: opcja konfiguracji służąca do włączania i wyłączania lampy błyskowej w urządzeniu.- Więcej informacji o wykrywaniu możliwości lampy błyskowej i włączaniu trybu latarki znajdziesz w przewodniku dla programistów.
Android NDK (C)
ArFlashMode
: opcja konfiguracji służąca do włączania i wyłączania lampy błyskowej w urządzeniu.- Więcej informacji o wykrywaniu możliwości lampy błyskowej i włączaniu trybu latarki znajdziesz w przewodniku dla programistów.
Rozszerzenia ARCore dla Fundacji AR Unity wspierają AR Foundation 5
Oficjalna obsługa rozszerzeń ARCore dla AR Foundation AR Foundation 5 Jeśli używasz AR Foundation 5 (zweryfikowanej wersji na Unity w wersji 2022 i 2023), użyj poniższych metod instalacji, aby uzyskać zgodną wersję Rozszerzenia ARCore dla Fundacji AR:
- Do
Add package from git url...
: użyj kontahttps://github.com/google-ar/arcore-unity-extensions.git#arf5
, - Do
Add package from tarball...
: użyj wersji oznaczonej jakoarf5
na stronie wersji.
Projekty, które pozostały w ramach AR Foundation w wersji 4, mogą korzystać z tej instalacji metody:
- Do
Add package from git url...
: użyj kontahttps://github.com/google-ar/arcore-unity-extensions.git#arf4
, - Do
Add package from tarball...
: użyj wersji oznaczonej jakoarf4
na stronie wersji.
Aby zmienić swój projekt z AR Foundation 4 na AR Foundation 5, zapoznaj się z przewodnika po migracji.
Niestandardowe symbole skryptowe
takie jak ARCORE_USE_ARF_5
z zespołu pomocy beta, nie są już używane.
Nowości w ARCore w wersji 1.44.0
Ta wersja nie zawiera nowych funkcji.
Nowości w ARCore w wersji 1.43.0
Interfejs Places API w migracji twórców Geospatial Creator
Funkcja wyszukiwania twórcy danych geoprzestrzennych korzysta teraz z interfejsu Google New Places API. Aby używać funkcji wyszukiwania, włącz interfejs „Places API (nowość)” w konsoli Google Cloud.
Nowości w ARCore w wersji 1.42.0
Przyciągaj do kafelka w usłudze Geospatial Creator dla Unity
Przyciąganie do kafelka przycisk został dodany do sekcji ARGeospatialCreatorAnchor
Panel Inspektor edytora. Ten przycisk ustawia
Wartość wysokości (tylko edytor) na wierzchu geometrii kafelka 3D na obszarze kotwicy
szerokości i długości geograficznej. Pamiętaj, że ta właściwość nie wpływa na
i działalności w czasie działania. Pomaga to dostosować położenie kotwicy w edytorze, aby
jego położenia w czasie działania.
Nowości w ARCore w wersji 1.41.0
Interfejs Geospatial Creator API
Aplikacja Geospatial Creator dla Unity obsługuje teraz tworzenie obiektów twórcy geoprzestrzennego i manipulowanie nimi w trybie edytora. Nowo dostępne zajęcia i interfejsy API zostały opisane w przewodniku po interfejsie Geospatial Creator API.
Obsługa AR Foundation w wersji 5.x (beta)
Rozszerzenia ARCore dla Fundacji AR Unity obsługują teraz wersje AR Foundation 5.x Aby przenieść istniejący projekt do AR Foundation, zapoznaj się z przewodnika po migracji.
Nowości w ARCore w wersji 1.40.0
Semantyka sceny w iOS
Interfejs Scene Semantics API jest teraz dostępny Pakiet ARCore SDK na iOS oraz rozszerzenia ARCore dla AR Foundation w Unity na platformę iOS. Interfejs Scene Semantics API umożliwia programistom zrozumieć w czasie rzeczywistym scenę wokół użytkownika, oznaczając piksele na 11 klas komponentów zewnętrznych. Przeczytaj Wprowadzenie do sceny Semantyka.
iOS
Unity (Fundacja AR)
Wyszukaj ciekawe miejsca na stronie Geospatial Creator for Unity
Twórca geoprzestrzenny dla Unity obsługuje teraz wyszukiwanie tekstowe Widok kafelków 3D ze zdjęciami. Zobacz Wyszukiwanie ciekawych miejsc w narzędziu Geospatial Creator .
Nowości w ARCore w wersji 1.39.0
Ta wersja nie zawiera nowych funkcji.
Nowości w ARCore w wersji 1.38.0
Ta wersja nie zawiera nowych funkcji.
Nowości w ARCore w wersji 1.37.0
Semantyka sceny
Semantyka scen pozwala uzyskać bardziej szczegółowe informacje o otoczeniu, co ułatwia zrozumienie świata dookoła użytkownika. Semantyka scen uruchamia model ML w pliku danych z kamery i tworzy obraz semantyczny z każdym pikselem odpowiadającym jednej z 11 etykiet dotyczących koncepcji związanych ze światem zewnętrznym.
Więcej informacji znajdziesz w artykule Wprowadzenie do semantyki sceny oraz przykładową aplikacją semantics_java.
Android (Kotlin/Java)
Android NDK (C)
Unity (Fundacja AR)
iOS
Geometria uliczna
Streetscape Geometry to nowy interfejs ARCore Geospatial API, który udostępnia geometrię budynków i terenu na obszarze wokół użytkownika, gdy włączony jest interfejs Geospatial API.
Android (Kotlin/Java)
Zobacz Przewodnik dla programistów dotyczący geometrii Streetscape (Kotlin/Java). Oprócz tego zaktualizowaliśmy przykładową aplikację geospatial_java, aby uwzględniała geometrię Streetscape Geometry.
Android NDK (C)
Więcej informacji znajdziesz w przewodniku dla programistów Streetscape Geometry (C).
Unity (Fundacja AR)
Więcej informacji znajdziesz w przewodniku dla programistów Streetscape Geometry (Unity).
iOS
Więcej informacji znajdziesz w przewodniku dla programistów Streetscape Geometry (iOS). Zaktualizowaliśmy też aplikację GeospatialExample, aby uwzględniała geometrię Streetscape.
GARStreetscapeGeometry
:GARStreetscapeGeometry.mesh
udostępnia siatki 3D.GARStreetscapeGeometry.meshTransform
udostępnia przekształcenie punktu początkowego geometrii względem przestrzeni świata sesji.GARStreetscapeGeometry.trackingState
zachowuje stan śledzenia.GARStreetscapeGeometry.type
wskazuje, czy jest to teren czy geometria budynku.GARStreetscapeGeometry.quality
podaje jakość geometrii.GARStreetscapeGeometry.identifier
podaje unikalny identyfikator geometrii.GARSession.createAnchorOnStreetscapeGeometry:transform:error:
tworzy reklamę zakotwiczoną w określonej lokalizacji i orientacji.GARSession.raycastStreetscapeGeometry:direction:error:
wykonuje zdjęcie promieni na tle geometrii Streetscape wczytanej do sceny.
Kotwy dachowe
Kotwice dachowe to nowy typ kotwicy geoprzestrzennej, który ułatwia zakotwiczenie treści na dachu.
Android (Kotlin/Java)
Zobacz kotwice geoprzestrzenne (Java). Oprócz tego przykładowa aplikacja geospatial_java została zaktualizowana i uwzględnia w niej kotwice Rooftop.
Android NDK (C)
Więcej informacji znajdziesz w sekcji Reklamy zakotwiczone geoprzestrzenne (C).
Unity (Fundacja AR)
Więcej informacji znajdziesz w artykule Reklamy zakotwiczone geoprzestrzenne. Oprócz tego do próbki danych geoprzestrzennych dodaliśmy reklamy zakotwiczone na dachu.
ARAnchorManagerExtensions.ResolveAnchorOnRooftopAsync()
zapewnia kotwicę obiektów gry w scenie na określonej szerokości i długości geograficznej, wysokości nad dachem i w określonej orientacji.ResolveAnchorOnRooftopPromise
ResolveAnchorOnRooftopResult
iOS
Więcej informacji znajdziesz w artykule Reklamy zakotwiczone geoprzestrzenne (iOS). Oprócz tego zaktualizowaliśmy aplikację GeospatialExample, aby obejmowała kotwice na dachu.
GARSession.createAnchorWithCoordinate:altitudeAboveRooftop:eastUpSouthQAnchor:completionHandler:error:
tworzy reklamę zakotwiczoną na dachu w określonej lokalizacji, na wysokości nad dachem (w metrach) i w stosunku do Ziemi.GARCreateAnchorOnRooftopFuture
przechowuje asynchroniczny stan reklamy zakotwiczonej na dachu.- Pole
GARRooftopAnchorState
opisuje stan rozstrzygania kotwicy na dachu.
Głębokość geoprzestrzenna
Gdy w sesji ARCore są włączone jednocześnie tryby Depth API i Streetscape Geometry, wygenerowane obrazy głębi są ulepszane za pomocą funkcji Streetscape Geometry. Funkcja Streetscape Geometry jest zintegrowana z każdym wygenerowanym obrazem głębi w zakresie do 65,535 metra. Aby zobaczyć tę korzyść, nie musisz wprowadzać żadnych zmian przy wywoływaniu interfejsu Depth API.
Android (Kotlin/Java)
Więcej informacji znajdziesz w artykule Głębokość geoprzestrzenna (Java).
Android NDK (C)
Więcej informacji znajdziesz w sekcji Głębokość geoprzestrzenna (C).
Unity (Fundacja AR)
Więcej informacji znajdziesz w sekcji Głębokość geoprzestrzenna (C).
iOS
Semantyka scen jest obecnie niedostępna w systemie iOS.
Obsługa renderowania interfejsu Vulkan
ARCore obsługuje teraz renderowanie w języku Vulkan, wyświetlając obraz z kamery za pomocą komponentu AHardwareBuffer
. Aby użyć tego bufora sprzętowego, powiąż go z elementem VkImage
.
Więcej informacji znajdziesz w artykułach o renderowaniu aplikacji ARCore za pomocą interfejsu Vulkan i przykładowej aplikacji hello_ar_vulkan_c.
Android (Kotlin/Java)
Android NDK (C)
Unity (Fundacja AR)
Renderowanie interfejsu Vulkan nie jest obecnie dostępne w Unity korzystającym z AR Foundation.
Elektroniczna stabilizacja obrazu (EIS)
Możesz skonfigurować ARCore, aby korzystał z elektronicznej stabilizacji obrazu, która wygładza klatki w aparacie, by zapewnić użytkownikom płynniejsze działanie.
Więcej informacji znajdziesz w sekcji Włączanie elektronicznej stabilizacji obrazu oraz przykładowej aplikacji hello_eis_kotlin.
Android (Kotlin/Java)
Config.ImageStabilizationMode
Frame.transformCoordinates3d()
Session.isImageStabilizationModeSupported()
- Występuje znany problem, w którym wywołanie metody
Frame.transformCoordinates3d()
ze współrzędnymi 2D innych niżOPENGL_NORMALIZED_DEVICE_COORDINATES
spowoduje awarię, a nie wysłanieIllegalArgumentException
. Ten problem zostanie rozwiązany w następnej wersji.
Android NDK (C)
ArImageStabilizationMode
ArFrame_transformCoordinates3d()
ArSession_isImageStabilizationModeSupported()
- Występuje znany problem polegający na tym, że wywołanie metody
ArFrame_transformCoordinates3d()
ze współrzędnymi 2D innych niżAR_COORDINATES_2D_OPENGL_NORMALIZED_DEVICE_COORDINATES
spowoduje przerwanie działania aplikacji zamiast zwrócenieAR_ERROR_INVALID_ARGUMENT
. Ten problem zostanie rozwiązany w następnej wersji.
Unity (Fundacja AR)
Dane EIS nie są obecnie dostępne dla Unity korzystających z AR Foundation.
iOS
Wskaźnik EIS jest obecnie niedostępny w przypadku iOS.
Asynchroniczne interfejsy API ARCore
W tej wersji wprowadziliśmy nowe asynchroniczne interfejsy API ARCore, które pozwalają poprawić ergonomię podczas pracy z operacjami asynchronicznymi zgodnie z paradygmatami Future i Promise.
Android (Kotlin/Java)
- Rozwiązywanie problemów z kotwicami terenu: użyj
Earth.resolveAnchorOnTerrainAsync()
, by otrzymaćResolveAnchorOnTerrainFuture
. Stary symbolEarth.resolveAnchorOnTerrain()
został wycofany i może zostać usunięty w nowszej wersji ARCore. - Rozwiązywanie problemów z kotwicami Cloud: użyj narzędzia
Session.resolveCloudAnchorAsync()
, aby uzyskaćResolveCloudAnchorFuture
. Stary symbolSession.resolveCloudAnchor()
został wycofany i może zostać usunięty w nowszej wersji ARCore. - Hosting kotwic Cloud: użyj usługi
Session.hostCloudAnchorAsync()
, aby uzyskaćHostCloudAnchorFuture
. Stare symboleSession.hostCloudAnchor()
iSession.hostCloudAnchorWithTtl()
zostały wycofane i mogą zostać usunięte w nowszej wersji ARCore. - Sprawdź dostępność pliku APK: użyj
ArCoreApk.checkAvailabilityAsync()
, aby zarejestrować wywołanie zwrotne. Stary symbolArCoreApk.checkAvailability()
nie został wycofany.
Android NDK (C)
- Rozwiązywanie problemów z kotwicami terenu: użyj
ArEarth_resolveAnchorOnTerrainAsync()
, by uzyskaćArResolveAnchorOnTerrainFuture
lubArResolveAnchorOnTerrainCallback
. Stary symbolArEarth_resolveAndAcquireNewAnchorOnTerrain()
został wycofany i może zostać usunięty w nowszej wersji ARCore. - Rozwiązywanie problemów z kotwicami Cloud: użyj narzędzia
ArSession_resolveCloudAnchorAsync()
, aby uzyskaćArResolveCloudAnchorFuture
lub użyćArResolveCloudAnchorCallback
. Stary symbolArSession_resolveAndAcquireNewCloudAnchor()
został wycofany i może zostać usunięty w nowszej wersji ARCore. - Hosting kotwic Cloud: użyj usługi
ArSession_hostCloudAnchorAsync()
, aby uzyskaćArHostCloudAnchorFuture
lub użyćArHostCloudAnchorCallback
. Stare symboleArSession_hostAndAcquireNewCloudAnchor()
iArSession_hostAndAcquireNewCloudAnchorWithTtl()
zostały wycofane i mogą zostać usunięte w nowszej wersji ARCore. - Sprawdź dostępność pliku APK: użyj
ArCoreApk_checkAvailabilityAsync()
, aby zarejestrować wywołanie zwrotne. Stary symbolArCoreApk_checkAvailability()
nie został wycofany.
Unity (Fundacja AR)
- Rozwiązywanie problemów z kotwicami terenu: użyj
ARAnchorManagerExtensions.ResolveAnchorOnTerrainAsync()
, by otrzymaćResolveAnchorOnTerrainPromise
. Stary symbolARAnchorManagerExtensions.ResolveAnchorOnTerrain()
został wycofany i może zostać usunięty w nowszej wersji ARCore. - Rozwiązywanie problemów z kotwicami Cloud: użyj narzędzia
ARAnchorManagerExtensions.ResolveCloudAnchorAsync()
, aby uzyskaćResolveCloudAnchorPromise
. Stary symbolARAnchorManagerExtensions.ResolveCloudAnchorId()
został wycofany i może zostać usunięty w nowszej wersji ARCore. - Hosting kotwic Cloud: użyj usługi
ARAnchorManagerExtensions.HostCloudAnchorAsync()
, aby uzyskaćHostCloudAnchorPromise
. Stare symboleARAnchorManagerExtensions.HostCloudAnchor()
zostały wycofane i można je usunąć w nowszej wersji ARCore.
iOS
- Rozwiązywanie problemów z kotwicami terenu: użyj
GARSession.createAnchorWithCoordinate:altitudeAboveTerrain:eastUpSouthQAnchor:completionHandler:error:
, by otrzymaćGARCreateAnchorOnTerrainFuture
. Stary symbolGARSession.createAnchorWithCoordinate:altitudeAboveTerrain:eastUpSouthQAnchor:error:
został wycofany i może zostać usunięty w nowszej wersji ARCore. - Rozwiązywanie problemów z kotwicami Cloud: użyj narzędzia
GARSession.resolveCloudAnchorWithIdentifier:completionHandler:error:
, aby uzyskaćGARResolveCloudAnchorFuture
. Stary symbolGARSession.resolveCloudAnchorWithIdentifier:error:
został wycofany i może zostać usunięty w nowszej wersji ARCore. - Hosting kotwic Cloud: użyj usługi
GARSession.hostCloudAnchor:TTLDays:completionHandler:error:
, aby uzyskaćGARHostCloudAnchorFuture
. Stare symboleGARSession.hostCloudAnchor:error:
iGARSession.hostCloudAnchor:TTLDays:error:
zostały wycofane i mogą zostać usunięte w nowszej wersji ARCore.
Nowości w ARCore w wersji 1.36.0
Obsługa menedżera pakietów Swift na urządzeniach z iOS
Pakiet ARCore SDK na iOS oficjalnie obsługuje teraz menedżera pakietów Swift. Instrukcje dotyczące integracji z ARCore za pomocą menedżera pakietów Swift znajdziesz w artykule Włączanie AR w aplikacji na iOS.
Nowości w ARCore w wersji 1.35.0
Dokładność pozycji geoprzestrzennej powoduje zastąpienie nagłówka odchyleniem
W przypadku wszystkich pozycji geoprzestrzennych dostępna jest teraz dokładność orientacji orientacji obrotu odchyleniem, co zastępuje dokładność nagłówka.
- Java/Kotlin: zastąp
GeospatialPose.getHeading()
elementemGeospatialPose.getEastUpSouthQuaternion()
, aGeospatialPose.getHeadingAccuracy()
–GeospatialPose.getOrientationYawAccuracy()
. - C: zamień
ArGeospatialPose_getHeading()
naArGeospatialPose_getEastUpSouthQuaternion()
, aArGeospatialPose_getHeadingAccuracy()
naArGeospatialPose_getOrientationYawAccuracy()
. - iOS: zamień
GARGeospatialTransform.heading
naGARGeospatialTransform.eastUpSouthQTarget
, aGARGeospatialTransform.headingAccuracy
naGARGeospatialTransform.orientationYawAccuracy
. - Unity: zamień
GeospatialPose.Heading
naGeospatialPose.EunRotation
, aGeospatialPose.HeadingAccuracy
naGeospatialPose.OrientationYawAccuracy
.
Dodatkowe zmiany i aktualizacje
W informacjach o wersji znajdziesz informacje o innych zmianach, poprawkach i ulepszeniach wydajności:
- Informacje o wersji pakietu ARCore SDK na Androida
- Informacje o wersji ARCore na Androida NDK
- Informacje o wersji pakietu ARCore SDK na iOS
- Informacje o wersji ARCore Extensions for AR Foundation
Nowości w ARCore w wersji 1.34.0
Sprawdzanie, czy funkcje geoprzestrzenne są dostępne w bieżącej lokalizacji urządzenia
Geospatial API może teraz sprawdzać dostępność systemu pozycjonowania wizualnego (VPS) w określonej pozycji poziomej w czasie działania. Tego interfejsu API można używać bez aktywnej sesji AR, na przykład do wyświetlania komunikatu „Enter AR” tylko wtedy, gdy dostępny jest VPS.
- Java/Kotlin:
Session.checkVpsAvailabilityAsync()
- C:
ArSession_checkVpsAvailabilityAsync()
- System iOS:
GARSession.checkVPSAvailabilityAtCoordinate:completionHandler:
- Unity (Fundacja AR):
AREarthManager.CheckVpsAvailability()
Orientacja pozycji geoprzestrzennej
Pozycje geoprzestrzenne teraz zapewniają ich orientację w przestrzeni 3D.
- Java/Kotlin:
feedbackGeospatialPose.getEastUpSouthQuaternion()
- C:
ArEarth_getGeospatialPose()
- System iOS:
GARGeospatialTransform.eastUpSouthQTarget
- Unity:
GeospatialPose.EunRotation()
Konwersje pozycji geoprzestrzennej
Pozycje geoprzestrzenne można teraz przekształcać w pozycje kosmiczne (AR) i z nich w przestrzeni światowej.
Aby uzyskać pozycję geoprzestrzenną z pozycji AR:
- Java/Kotlin:
Earth.getGeospatialPose()
- C:
ArEarth_getGeospatialPose()
- System iOS:
GARSession.geospatialTransformFromTransform:error:
- Unity:
AREarthManager.Convert(Pose)
Aby uzyskać pozycję AR w pozycji geoprzestrzennej:
- Java/Kotlin:
Earth.getPose()
- C:
ArEarth_getPose()
- System iOS:
GARSession.transformFromGeospatialCoordinate:altitude:eastUpSouthQTarget:error:
- Unity:
AREarthManager.Convert(GeospatialPose)
Pozycje geoprzestrzenne uzyskane z tych funkcji mają wartość nagłówka ustawioną na 0. Zamiast tego użyj tego:
- Android (Java/Kotlin/C): kwartonion EUS pozycji
- iOS:
eastUpSouthQTarget
w pozycji - Unity:
EunRotation
w pozycji
Dodatkowe zmiany i aktualizacje
W informacjach o wersji znajdziesz informacje o innych zmianach, poprawkach i ulepszeniach wydajności:
- Informacje o wersji pakietu ARCore SDK na Androida
- Informacje o wersji ARCore na Androida NDK
- Informacje o wersji pakietu ARCore SDK na iOS
- Informacje o wersji ARCore Extensions for AR Foundation
Nowości w ARCore w wersji 1.33.0
Nowy punkt końcowy Cloud Anchors
- Aby korzystać z Cloud Anchors, musisz włączyć interfejs ARCore API zamiast starszego ARCore Cloud Anchor API, który został wycofany. Aby zapewnić obsługę starszych wersji aplikacji, podczas przechodzenia na nową usługę możesz włączyć obie wersje. Aplikacje z pakietem ARCore SDK w wersji 1.32.0 lub starszej będą kierowane na starszy interfejs API, a aplikacje z pakietem ARCore SDK w wersji 1.33.0 lub nowszej – na nowy interfejs API. Uwaga:
- Nowy interfejs API używa nazwy domeny
arcore.googleapis.com
zamiastarcorecloudanchor.googleapis.com
. - Jeśli używasz klucza interfejsu API, który jest ograniczony przez interfejs API, musisz zezwolić na używanie interfejsu ARCore API.
- Jeśli z backendu wysyłasz żądania do interfejsu ARCore Cloud Anchor Management API, po włączeniu interfejsu ARCore API musisz też zmienić nazwę domeny na
arcore.googleapis.com
. - Stary interfejs API lub punkt końcowy będą obsługiwane do sierpnia 2023 r.
- Więcej informacji znajdziesz w artykule Zmiany punktów końcowych usługi Cloud Anchor w wersji ARCore 1.33.
- Nowy interfejs API używa nazwy domeny
Kotwice terenu
- Interfejs Geospatial Terrain Anchor API tworzy reklamę zakotwiczoną w określonej pozycji poziomej i na określonej wysokości względem terenu w pozycji poziomej.
Dodatkowe zmiany i aktualizacje
W informacjach o wersji znajdziesz informacje o innych zmianach, poprawkach i ulepszeniach wydajności:
- Informacje o wersji pakietu ARCore SDK na Androida
- Informacje o wersji ARCore na Androida NDK
- Informacje o wersji pakietu ARCore SDK na iOS
- Informacje o wersji ARCore Extensions for AR Foundation
Nowości w ARCore w wersji 1.32.0
Ta wersja nie zawiera nowych funkcji.
Android i Unity (AR Foundation) na Androida
- Interfejs
targetSdkVersion
ARCore został zaktualizowany do interfejsu API Androida na poziomie 32. Jeśli Twoja aplikacja nie określa elementutargetSdkVersion
, z powodu scalania manifestu jej identyfikatortargetSdkVersion
zmieni się na 32.- Android SDK: określenie
targetSdkVersion
w parametrzebuild.gradle
lubAndroidManifest.xml
projektu zastąpi wartośćtargetSdkVersion
ARCore. - Podstawy AR na Androida: określanie docelowego poziomu interfejsu API w projekcie Unity w sekcji Ustawienia projektu > Odtwarzacz > Android > Inne ustawienia zastąpią wartość
targetSdkVersion
w ARCore.
- Android SDK: określenie
Dodatkowe zmiany i aktualizacje
W informacjach o wersji znajdziesz informacje o innych zmianach, poprawkach i ulepszeniach wydajności:
- Informacje o wersji pakietu ARCore SDK na Androida
- Informacje o wersji ARCore na Androida NDK
- Informacje o wersji pakietu ARCore SDK na iOS
- Informacje o wersji ARCore Extensions for AR Foundation
Nowości w ARCore w wersji 1.31.0
Interfejs ARCore Geospatial API
Nowy ARCore Geospatial API wykorzystuje dane z modeli 3D Google Earth oraz dane zdjęć Street View z Map Google, które umożliwią Ci pełniejsze wrażenia z korzystania z Twojej aplikacji, działającą na całym świecie technologię rzeczywistości rozszerzonej opartą na lokalizacji.
Zapoznaj się z wprowadzeniem do interfejsu ARCore Geospatial API, aby zapoznać się z tymi materiałami: dokumentacji dla deweloperów konkretnej platformy oraz jak zacząć korzystać z nowej Geospatial API.
Głębokość dalekiego zasięgu
Interfejs ARCore Depth API jest teraz zoptymalizowany, aby uwzględniać wykrywanie głębi w dużym zasięgu, zwiększając zakres reprezentatywnych obserwacji głębi. Wszystkie 16-bitowe wartości używany jest obraz głębi o maksymalnym zakresie 65 535 milimetrów. Wcześniej wpisano tylko 13-bitowe wartości, z limitem 8191 milimetrów.
Zapoznaj się ze zmianami dotyczącymi głębi w tych raportach: dokumentacji dla deweloperów związaną z daną platformą oraz aby zrozumieć zmiany Depth API.
Uwagi dotyczące konkretnej platformy
Android
Nowe interfejsy API geoprzestrzenne ARCore
Java
Earth
zapewnia lokalizację we współrzędnych względnych Earth.Earth.createAnchor()
tworzy nowy elementAnchor
w określonej lokalizacji i orientacji względem Ziemi.
Earth.Earthstate
opisuje bieżący stanEarth
, włącznie z jegoTrackingState
.GeospatialPose
określa konkretną lokalizację, wysokość i kierunek kompasu względem Ziemię.
C
ArEarth
zapewnia możliwość lokalizacji we współrzędnych względem Ziemi.ArEarth_acquireNewAnchor()
tworzy nowy elementAnchor
w określonej lokalizacji i orientacji względem Ziemi.ArEarthState
opisuje bieżący stanArEarth
, włącznie z jegoArTrackingState
.
ArGeospatialPose
określa konkretną lokalizację, wysokość i kierunek kompasu względem Ziemię.
Zaktualizowano interfejsy ARCore Depth API
Java
- Wywołania funkcji interfejsu Depth API uległy zmianie:
Frame.acquireDepthImage
użytkownikowiFrame.acquireDepthImage16Bits
.Frame.acquireRawDepthImage
użytkownikowiFrame.acquireRawDepthImage16Bits
.- Formaty obrazu wyjściowego obu wywołań zmieniły się z
android.graphics.ImageFormat#DEPTH16
doandroid.hardware.HardwareBuffer#D_16
- Głębia jest nadal wyrażona jako 16-bitowa liczba całkowita w jednostkach milimetrów, ale teraz wszystkie 16-bitowe wartości są używane do określania głębi, dla maksymalnego zakresu od 8191 mm do 65535 mm.
- Funkcja Depth API wywołuje
Frame.acquireDepthImage
i Wycofano regułyFrame.acquireRawDepthImage
. UżyjFrame.acquireDepthImage16Bits
iFrame.acquireRawDepthImage16Bits
.
- Wywołania funkcji interfejsu Depth API uległy zmianie:
C
- Wywołania funkcji interfejsu Depth API uległy zmianie:
ArFrame_acquireDepthImage
użytkownikowiArFrame_acquireDepthImage16Bits
.- Od
ArFrame_acquireRawDepthImage
doArFrame_acquireRawDepthImage16Bits
- Formaty obrazu wyjściowego obu wywołań zmieniły się z
AR_IMAGE_FORMAT_DEPTH16
doAR_IMAGE_FORMAT_D_16
. - Głębia jest nadal wyrażona jako 16-bitowa liczba całkowita w jednostkach milimetrów, ale teraz wszystkie 16-bitowe wartości są używane do określania głębi, dla maksymalnego zakresu od 8191 mm do 65535 mm.
- Funkcja Depth API wywołuje
ArFrame_acquireDepthImage
i Wycofano regułyArFrame_acquireRawDepthImage
. UżyjArFrame_acquireDepthImage16Bits
iArFrame_acquireRawDepthImage16Bits
.
- Wywołania funkcji interfejsu Depth API uległy zmianie:
Unity (Fundacja AR)
Nowe interfejsy ARCore Geospatial API:
AREarthManager
zapewnia możliwość lokalizacji we współrzędnych względem Ziemi.EarthTrackingState
pobiera stan śledzenia Ziemi dla ostatniej klatki.EarthState
zachowuje warunki błędu Earth.
GeospatialPose
opisuje konkretną lokalizację, wysokość oraz kierunek kompasu względem Ziemi.ARGeospatialAnchor
zapewnia kotwicę obiektów gry w scenie, określoną w lokalizacji i orientacji względem Ziemi.
iOS
Nowe interfejsy ARCore Geospatial API:
GAREarth
Zapewnia lokalizację względną dla Ziemi.GAREarthState.earthState
zarządza stanami i warunkami błędów.GAREarthState.trackingState
zachowuje stan śledzenia wymagany dla danych geoprzestrzennych.
GARGeospatialTransform
Reprezentacja globalnej transformacji, w tym lokalizacji, kierunku, wysokości i szacunków dokładności.GARSession.createAnchorWithCoordinate:altitude:eastUpSouthQAnchor:error:
Tworzy kotwicę geoprzestrzenną w określonej lokalizacji i orientacji względem Ziemi.
Inne zmiany
W informacjach o wersji znajdziesz informacje o innych zmianach, poprawkach i ulepszeniach wydajności:
- Informacje o wersji pakietu ARCore SDK na Androida
- Informacje o wersji ARCore na Androida NDK
- Informacje o wersji pakietu ARCore SDK na iOS
- Informacje o wersji ARCore Extensions for AR Foundation
Nowości w ARCore w wersji 1.30.0
Ta wersja nie zawiera nowych funkcji.
Android
- Interfejs API z adnotacjami zwraca wartości z
@NonNull
i@Nullable
. - Zaktualizowano wersje narzędzia do kompilacji używane do przykładów kompilacji: Gradle do wersji 7.0.2 i wtyczki Androida do obsługi Gradle do wersji 7.0.4. Aktualizacja tych narzędzi nie jest wymagana dla istniejących aplikacji ARCore. W przypadku nowych funkcji, znanych problemów informacje o niezgodności, patrz Dokumentacja Androida dotycząca wtyczki do obsługi Gradle Androida.
Unity (Fundacja AR)
Dodano nową wersję:
arcore-unity-extensions-without-edm4u.tgz
. Ten wariant wersji nie łączy w sobie zależności zewnętrznych, takich jak Zewnętrzny menedżer zależności dla Unity i umożliwia przejście na EDM. Użycie tej wersji Lite może rozwiązać problemy z zgodnością podczas korzystania z Firebase biblioteki. Zobacz instrukcje instalacji ARCore Extensions for AR Foundation aby rozpocząć.Uaktualnienie ExternalDependencyManager do wersji 1.2.168 w celu lepszej obsługi wersji 2021.2 lub nowszej, patrz szczegóły w Historia zmian EDM
Rozwiązaliśmy problem polegający na tym, że sesja ARCore konfiguruje każdą klatkę nawet wtedy, gdy konfiguracji sesji, co powoduje spadek liczby klatek na sekundę.
iOS
- Różne poprawki błędów i ulepszenie działania aplikacji.
Nowości w ARCore w wersji 1.29.0
Ta wersja nie zawiera nowych funkcji.
Android
- hello_ar_java i hello_ar_kotlin: zmieniono kolor obiektu po jego umieszczeniu za pomocą
SCREENSPACE_WITH_APPROXIMATE_DISTANCE
, by lepiej odróżniać obiekty umieszczone za pomocą szybkiego miejsca docelowego. - persistent_cloud_anchor_java: do przykładu dodano brakującą zależność kompilacji. Naprawia błąd, który powodował, że hostowanie dowolnej kotwicy miało stan
CloudAnchorState ERROR_NOT_AUTHORIZED
, nawet jeśli projekt został poprawnie skonfigurowany.
Unity (Fundacja AR)
- Pakiet rozszerzeń ARCore korzysta teraz z wtyczki ARKit XR, aby mieć pewność, że zainstalowana wersja AR Foundation jest zgodna z wersją wtyczki ARKit XR. Rozwiązuje to błąd kompilacji podczas instalowania rozszerzeń ARCore w systemie Unity 2019.x i włączania wtyczki ARKit XR.
- Ustawienia projektu rozszerzeń ARCore zostały przeniesione z Ustawienia projektu > XR > Rozszerzenia ARCore do Ustawień projektu > Zarządzanie wtyczkami XR > Rozszerzenia ARCore.
- Elementy
ARCoreExtensionsConfig
,ARCoreExtensionsCameraConfigFilter
,ARCoreRecordingConfig
zostały przeniesione z sekcji Utwórz > XR > Rozszerzenia ARCore do tworzenia > Menu XR.
iOS
- Różne poprawki błędów i ulepszenie działania aplikacji.
Pełne informacje o wersji
- Pełne informacje o wersji ARCore SDK na Androida
- Pełne informacje o wersji ARCore na Androida NDK
- Pełne informacje o wersji ARCore SDK na iOS
- Informacje o wersji ARCore Extensions for AR Foundation
Nowości w ARCore w wersji 1.28.0
- Od listopada 2022 r. aplikacje obsługujące AR nie będą już mogły pobierać obrazów NDK ani metadanych obrazów. Wersje pakietu SDK, których to dotyczy, zależą od wywoływanej konkretnej funkcji. Więcej informacji znajdziesz w ogłoszeniu o wycofaniu.
- C: wywołania
ArImage_getNdkImage()
iArImage_getNdkCameraMetadata()
zawsze będą zwracać wartościnullptr
dla obiektówAImage
iACameraMetadata
. - Java: obiekt
Image
zwrócony przez komponentFrame#acquireCameraImage()
będzie miał rozmiar0
x0
piks. WywołaniaFrame#getImageMetadata()
zawsze powodują wywołanieIllegalArgumentException
. - Unity (AR Foundation): gdy używasz AR Foundation 2.1 (Unity 2019 LTS), wywołania
XRCameraSubsystem.TryGetLatestImage(out XRCameraImage)
zawsze zwracająfalse
. Nie ma to wpływu na AR Foundation 4.x i nowsze wersje. WywołaniaXRCameraSubsystem.TryGetLatestImage(out XRCameraImage)
będą działać normalnie. - Pakiet ARCore SDK dla Unity (wycofany): wywołania
Frame.CameraImage.AcquireCameraImageBytes()
będą miały rozmiar0
x0
pikseli. WywołaniaFrame.CameraMetadata.GetAllCameraMetadataTags()
zwrócą pusteList<CameraMetadataTag>
.
- C: wywołania
- Java:
ArImage#getCropRect()
zwraca teraz prostokąt przycinania w pełnym rozmiarze, czyli wszystkie piksele w obrazie są prawidłowe. Więcej informacji znajdziesz w sekcjiandroid.media.Image#getCropRect()
.
Nowości w ARCore w wersji 1.27.0
Ta wersja nie zawiera nowych funkcji. Poniżej znajdziesz informacje o wersjach dla różnych poprawki błędów i ulepszenia wydajności.
- Pełne informacje o wersji ARCore SDK na Androida
- Pełne informacje o wersji ARCore na Androida NDK
- Pełne informacje o wersji ARCore SDK na iOS
- Informacje o wersji ARCore Extensions for AR Foundation
Oprócz różnych poprawek błędów w tej wersji wprowadziliśmy następujące poprawki:
Przykładowe aplikacje w Kotlin
Dodano obiekt hello_ar_kotlin, aby zademonstrować sprawdzone metody korzystania z Kotlin.
Więcej dowiesz się z krótkiego startu na temat Androida. i informacjami o nich.
Dodaliśmy ml_kotlin, aby zademonstrować, jak za pomocą ARCore używać modelu klasyfikacji obrazów.
Zobacz Używanie ARCore jako danych wejściowych dla modeli uczenia maszynowego .
Nowości w ARCore w wersji 1.26.0
W tej wersji wprowadzono następujące ważne zmiany:
- Identyfikatory URI są teraz obsługiwane w przypadku zbiorów danych w sekcji Nagrywanie Odtwarzanie.
Dodatkowe zmiany i aktualizacje
Poniżej znajdziesz informacje o wersji, w których znajdziesz dodatkowe poprawki błędów i inne zmiany powodujące niezgodność.
- Pełne informacje o wersji ARCore SDK na Androida
- Pełne informacje o wersji ARCore na Androida NDK
- Pełne informacje o wersji ARCore SDK na iOS
- Informacje o wersji ARCore Extensions for AR Foundation
Nowości w ARCore w wersji 1.25.0
Ta wersja nie zawiera nowych funkcji. Poniżej znajdziesz informacje o wersjach dla różnych poprawki błędów i ulepszenia wydajności.
- Pełne informacje o wersji ARCore SDK na Androida
- Pełne informacje o wersji ARCore na Androida NDK
- Pełne informacje o wersji ARCore SDK na iOS
- Pełne informacje o wersji pakietu ARCore SDK dla Unity
- Informacje o wersji ARCore Extensions for AR Foundation
Nowości w ARCore w wersji 1.24.0
W tej wersji wprowadzono następujące ważne zmiany:
- Nowy interfejs Raw Depth API zapewniający obraz głębi bez filtrowania przestrzeni obrazu.
- Możliwość własnego rejestrowania ścieżek danych w Interfejs API odtwarzania
- Możliwość przeprowadzania dogłębnych testów trafień
Głębokość nieprzetworzona
Interfejs Raw Depth API dostarcza dane o głębi w przypadku obrazu z kamery mającego większą niż pełne dane interfejsu Depth API, ale nie zawsze obejmuje każdy piksel. Nierafinowane obrazy głębi wraz z ich pasującymi obrazami ufności mogą być dzięki czemu aplikacje mogą korzystać tylko z danych o wystarczającej dokładności dla każdego przypadku użycia.
Przewodniki dla programistów:
- Android (Java/Kotlin)
- Android NDK (C)
- ARCore Extensions for AR Foundation
- Pakiet ARCore SDK dla Unity
Nagrywanie niestandardowej ścieżki audio
Nowa niestandardowa ścieżka danych w funkcji Nagrywanie Dzięki interfejsowi API odtwarzania możesz dodawania niestandardowych danych do klatki ARCore podczas nagrywania dane z klatki podczas odtwarzania.
Przewodniki dla programistów:
- Android (Java/Kotlin)
- Android NDK (C)
- ARCore Extensions for AR Foundation
- Pakiet ARCore SDK dla Unity
Testy głębokości
Wcześniej testy trafień można było przeprowadzać tylko na wykrytych płaszczyznach, co ograniczało na duże, płaskie powierzchnie. Testy głębokości ruchów opierają się i nieprzetworzone dane, aby zapewnić dokładniejsze wyniki działań, nawet w powierzchnie nieplanarne i o niskiej tekstur.
Przewodniki dla programistów:
Dodatkowe zmiany i aktualizacje
Poniżej znajdziesz informacje o wersji, w których znajdziesz dodatkowe poprawki błędów i inne zmiany powodujące niezgodność.
- Pełne informacje o wersji ARCore SDK na Androida
- Pełne informacje o wersji ARCore na Androida NDK
- Pełne informacje o wersji ARCore SDK na iOS
- Pełne informacje o wersji pakietu ARCore SDK dla Unity
- Informacje o wersji ARCore Extensions for AR Foundation
Nowości w ARCore w wersji 1.23.0
Oczekuje na obsługę dwóch aparatów
W najbliższych tygodniach wprowadzimy obsługę dwóch aparatów. Zobacz obsługiwane urządzenia .
Nowe narzędzia do debugowania
Wysyłając intencję transmisji, deweloperzy mogą umożliwić:
Logowanie wywołań interfejsu ARCore API w Dziennik debugowania Androida
Nakładka wydajności ARCore
Hosting i rozwiązywanie problemów zakotwiczonych Cloud Anchor
Aplikacje obsługujące AR i stworzone przy użyciu pakietu ARCore SDK w wersji 1.11.0 lub starszej nie będą już mogły i hostować lub rozwiązywać problemy Cloud Anchor.
C: elementy zakotwiczone Cloud zwrócone przez
ArSession_hostAndAcquireNewCloudAnchor
iArSession_resolveAndAcquireNewCloudAnchor
zawsze ma stanAR_CLOUD_ANCHOR_STATE_ERROR_INTERNAL
.Java: kotwice Cloud zwrócone przez
Session.hostCloudAnchor(Anchor)
iSession.resolveCloudAnchor(String)
zawsze ma stanAnchor.CloudAnchorState.ERROR_INTERNAL
.Unity: kotwice Cloud zwrócone przez
XPSession.CreateCloudAnchor(Anchor)
iXPSession.ResolveCloudAnchor(string)
zawsze będą miały stanCloudServiceResponse.ErrorInternal
.
Te zmiany nie mają wpływu na aplikacje utworzone za pomocą pakietu ARCore SDK w wersji 1.12.0 lub nowszej. Ich wykorzystanie interfejsu ARCore Cloud Anchor API jest objęte zasady wycofywania.
Dodatkowe zmiany i aktualizacje
Poniżej znajdziesz informacje o wersji, w których znajdziesz dodatkowe poprawki błędów i inne usterki zmian.
Nowości w ARCore w wersji 1.22.0
W tej wersji dodaliśmy nowe interfejsy API do nagrywania i odtwarzania oraz Interfejsy API filtra konfiguracji aparatu na potrzeby ARCore Rozszerzenia dla podstawowej działalności AR. Aby dowiedzieć się więcej, przeczytaj pełne informacje o wersji ARCore Extensions.
Dodatkowe zmiany i aktualizacje
Poniżej znajdziesz informacje o wersji, w których znajdziesz dodatkowe poprawki błędów i inne usterki zmian.
Nowości w ARCore w wersji 1.21.0
W tej wersji dodaliśmy nowe interfejsy API do nagrywania i odtwarzania dla: Android, Android NDK, i Unity.
Nagrywanie i odtwarzanie
Dzięki interfejsom API do nagrywania i odtwarzania możesz raz nagrać dane wideo i AR w danym środowisku i wykorzystanie tych treści do zastąpienia sesji kamery na żywo. do celów testowych. ARCore zapisuje nagrane sesje w plikach MP4, które zawierają wiele ścieżek wideo i inne dane. Następnie możesz: tak, aby aplikacja mogła używać tych danych zamiast sesji kamery. Dzięki temu odtwarzanie tych treści w nieskończoność, co pozwala wypróbować różne efekty AR bez a potem wrócimy do pracy.
Szczegółowe informacje:
Java:
C:
Wspólnota:
Nowości w ARCore w wersji 1.20.0
W tej wersji wprowadzono następujące ważne zmiany:
Nowa obsługa trwałych elementów zakotwiczonych Cloud.
Zaktualizowano możliwości metadanych obrazu w Androidzie i Androidzie NDK.
Nowe wskazówki wymagające wersji Gradle wersji 5.6.4 lub nowszej na potrzeby obsługi ARCore Extensions for AR Foundation lub ARCore Pakiet SDK na platformę Unity (1.19 lub nowszą) z Unity w wersji 2018.4 lub nowszej.
Nowa obsługa trwałych kotwic w chmurze
Przed wprowadzeniem ARCore w wersji 1.20 obiekty Cloud Anchors można było rozwiązywać tylko przez maksymalnie 24 godziny po ich udostępnieniu. Trwałe kotwice Cloud Anchor pozwala tworzyć Kotwica w chmurze z czasem życia (TTL) od 1 do 365 dni. Możesz też wydłużanie czasu życia reklamy zakotwiczonej po tym, jak jest już hostowana; za pomocą interfejsu Cloud Anchor Management API.
Używanie trwałych kotwic Cloud podlega nowym zasadom wycofywania usług Cloud Anchor.
C: Przewodnik dla programistów,
ArSession_hostAndAcquireNewCloudAnchorWithTtl
, iArSession_estimateFeatureMapQualityForHosting
.Java: przewodnik dla programistów,
hostCloudAnchorWithTtl
iestimateFeatureMapQualityForHosting
iOS: przewodnik dla programistów,
hostCloudAnchor:TTLDays:error:
iestimateFeatureMapQualityForHosting:
ARCore Extensions for AR Foundation: przewodnik dla programistów Androida Przewodnik dla programistów iOS
ARAnchorManager.HostCloudAnchor(ARAnchor, int)
,ARAnchorManager.SetAuthToken(string)
orazARAnchorManager.EstimateFeatureMapQualityForHosting(Pose)
.Kierowanie na Androida: przewodnik dla programistów,
XPSession.CreateCloudAnchor(Anchor, int)
iXPSession.EstimateFeatureMapQualityForHosting(Pose)
.Kierowanie na Unity na iOS: przewodnik dla programistów,
XPSession.SetAuthToken(string)
. iXPSession.CreateCloudAnchor(UnityARUserAnchorComponent, int)
.
Dodatkowe zmiany i aktualizacje
Poniżej znajdziesz informacje o wersji, w których znajdziesz dodatkowe poprawki błędów i inne usterki zmian.
Nowości w ARCore w wersji 1.19.0
W tej wersji wprowadzono następujące ważne zmiany:
- Nowy interfejs API błyskawicznego miejsca docelowego na Androida Android NDK oraz Unity
- Nowe wskazówki dotyczące tworzenia aplikacji na Androida 11 z Unity.
Szybkie miejsce docelowe
Interfejs API natychmiastowego miejsca docelowego pozwala użytkownikowi umieścić obiekt AR na ekranie bez czekania, aż ARCore wykryje geometrię powierzchni. Miejsce docelowe obiektu poprawia się w czasie rzeczywistym w miarę jak użytkownik porusza się po otoczeniu. Jednorazowo ARCore wykrywa prawidłową pozycję w regionie, w którym znajduje się obiekt AR, biały obiekt automatycznie zmienia się, by poprawić ułożenie i staje się nieprzezroczysty.
Ten klip pokazuje wirtualną postać Androida w prawdziwym świecie. tabeli. Po umieszczeniu ilustracja jest ona biała i znacznie mniejsza. Po ARCore dokładniej oblicza wymiary sceny, postać przeskakuje do dokładnego położenia. Może to powodować różnicę w postrzeganym „rozmiarze” z obiektu.
Szczegółowe informacje:
Urządzenia z Androidem:
Android NDK:
Wspólnota:
Nowości w ARCore w wersji 1.18.0
W tej wersji wprowadzono następujące ważne zmiany:
- Nowy Depth API na Androida, Android NDK i Unity.
- Nowe wskazówki za tworzenie zasobów Augmented Faces i importowanie ich na Androida Studio.
- Interfejs Depth API będzie obsługiwany w
4.1.0-preview.2
w przypadku obu wersjiAR Foundation
. iARCore XR Plugin
.
Depth API
Na urządzeniach z obsługą głębokości za pomocą interfejsu Depth API kamery RGB urządzenia obsługującego ARCore lub aktywnego czujnika głębi, jeśli w celu tworzenia map głębi. Następnie możesz wykorzystać podaną głębię na piksel dzięki mapie głębi, aby precyzyjnie wyświetlać wirtualne obiekty przed sobą prawdziwych obiektów, dzięki czemu wrażenia użytkownika są realistyczne.
Na przykład te obrazy przedstawiają wirtualną postać Androida w prawdziwej przestrzeni. z bagażnikiem obok drzwi. Depth API prawidłowo pomija znajduje się za krawędzią pnia.
Szczegółowe informacje:
Urządzenia z Androidem:
Android NDK:
Wspólnota:
Nowości w ARCore w wersji 1.17.0
Informacje dostępne w ARCore SDK na Androida
Dodaliśmy nowe metody pozwalające na buforowanie wielu klatek z kamery. Razem z innych technik, takich jak renderowanie wielowątkowe, które można wykorzystać do zmniejszenia zmienność liczby klatek.
Dodano brakujące użycie czujnika głębi i metody pobierania docelowej liczby klatek na sekundę:
Zapoznaj się też z pełnymi informacjami o wersji pakietu Android SDK na Androida.
Informacje dostępne w ARCore SDK dla Unity
- dodano obsługę renderowania wielowątkowego w Unity w wersji 2018.2 lub nowszej, co w większości przypadków poprawia wydajność, co może pomóc zmniejszyć zmienność liczby klatek. To jest projekt w Unity w sekcji Ustawienia projektu > Odtwarzacz > Android > Inne ustawienia > Renderowanie wielowątkowe – Zobacz Więcej informacji znajdziesz w przewodniku dla programistów.
- Dodano:
SessionStatus.ErrorCameraNotAvailable
iSessionStatus.ErrorIllegalState
do wskazywania konkretnych stanów błędu sesji ARCore.
Zapoznaj się też z pełnymi informacjami o wersji pakietu ARCore SDK dla Unity.
Informacje dostępne w ARCore SDK na iOS
Rozmiar pliku binarnego pakietu SDK Cloud Anchors znacznie się zmniejszył.
W przypadku rozszerzonych rozpoznawania twarzy działa teraz kod bitowy.
Zapoznaj się też z pełnymi informacjami o wersji ARCore SDK na iOS.
Nowości w ARCore w wersji 1.16.0
Widoczne w ARCore SDK na Androida i Sceneform SDK na Androida.
W tej wersji wprowadzono następujące ważne zmiany:
- Większość urządzeń zwraca teraz dodatkowe obsługiwane konfiguracje kamery o niższych parametrach
Rozdzielczość tekstur GPU jest większa niż domyślna rozdzielczość tekstur w GPU urządzenia.
Więcej informacji znajdziesz na stronie Urządzenia obsługujące ARCore.
Te rozszerzone rozdzielczości GPU są dostępne poprzez interfejs API
getSupportedCameraConfigs(CameraConfigFilter)
.
Zobacz także:
Wyróżniona w kategorii ARCore Extensions for AR Foundation.
W tej wersji wprowadzono następujące ważne zmiany:
Metoda
XRCameraConfiguration
AR Foundation została rozszerzona o metody, które umożliwiają wybrać odpowiednią konfigurację kamery na podstawie potrzebnych kryteriów. Metody te obejmują GetTextureDimensions(), GetFPSRange(), i GetDepthSensorUsages(). Przeczytaj szczegółowe instrukcje.Minimalną zalecaną wersją rozszerzeń ARCore jest teraz Unity 2019.3.0f6. AR Foundation 3.1.0-preview.6 wymaga Unity w wersji 2019.3 lub nowszej.
Unity używa teraz terminów Anchor (kotwica), Cloud Anchor (kotwica w chmurze) i Cloud Anchor ID (Identyfikator zakotwiczenia w Cloud); międzyplatformowego interfejsu API AR. W związku z tym zaktualizowaliśmy dokumentację dotyczącą rozszerzeń ARCore.
Zobacz także:
Informacje dostępne w ARCore SDK dla Unity
W tym wydaniu wprowadziliśmy tę ważną zmianę:
- Większość urządzeń zwraca teraz dodatkowe obsługiwane konfiguracje kamery o niższych parametrach Rozdzielczość tekstur GPU jest większa niż domyślna rozdzielczość tekstur w GPU urządzenia. Więcej informacji znajdziesz w artykule Urządzenia obsługujące ARCore. Te rozszerzone rozdzielczości GPU są dostępne za pomocą interfejsu API ARCoreCameraConfigFilter.
Zobacz także:
Pełne informacje o wersji pakietu ARCore SDK dla Unity
Nowości w ARCore w wersji 1.15.0
Wyróżniona w kategorii ARCore Extensions for AR Foundation.
W tej wersji wprowadzono następujące ważne zmiany.
Dodano przykładowy element CloudAnchors pokazujący, jak tworzyć współdzielone środowiska AR dla: na Androida i iOS. Zobacz instrukcje dla Androida. lub iOS.
Minimalną zalecaną wersją do użycia z ARCore jest teraz Unity 2019.2.17f1 Rozszerzenia.
Pełne informacje o wersji ARCore Extensions
Informacje dostępne w ARCore SDK dla Unity
W tej wersji występują następujące znane problemy.
Podgląd w wyszukiwarce może zablokować Unity, jeśli używasz Androida 9 i kabla USB 3. Aby rozwiązać ten problem, zaktualizuj Androida do wersji 10 lub użyj kabla USB 2.
Podgląd w wyszukiwarce może się nie wyświetlić na urządzeniu, gdy widok gry w Unity rozdzielczość jest za wysoka. Aby temu zaradzić, zmniejsz rozdzielczość widoku gry w Redaktor.
Pełne informacje o wersji pakietu ARCore SDK dla Unity
Dodatkowe zmiany
Poniżej znajdziesz informacje o wersji, w których znajdziesz dodatkowe poprawki błędów i inne usterki zmian.
Nowości w ARCore w wersji 1.14.0
W tej wersji wprowadzono następujące ważne zmiany.
Gdy aplikacja tymczasowo utraci kamerę na połączenie z inną aplikacją na urządzeniu, przyczyna niepowodzenia śledzenia jest teraz bardziej szczegółowa:
Android:
TrackingFailureReason
jestCAMERA_UNAVAILABLE
, a nieNONE
.Android NDK:
ArTrackingFailureReasons
jestAR_TRACKING_FAILURE_REASON_CAMERA_UNAVAILABLE
, a nieAR_TRACKING_FAILURE_REASON_NONE
.Unity:
Session.LostTrackingReason
jestLostTrackingReason.CameraUnavailable
, a nieNone
.
Google gromadzi i przetwarza dane związanych z korzystaniem przez Ciebie z pakietu rozszerzeń ARCore zgodnie z Polityką prywatności Google oraz Warunki korzystania z interfejsów API Google. Dostępne opcje zrezygnować z tej funkcji.
Nowości w ARCore w wersji 1.13.0
W tej wersji wprowadzono następujące ważne zmiany.
Obsługa rozszerzeń ARCore dla Fundacji AR Unity w celu tworzenia iOS i aplikacje z Cloud Anchors.
Poniżej znajdziesz informacje o wersji, w których znajdziesz dodatkowe poprawki błędów i inne usterki zmian.
Nowości w ARCore w wersji 1.12.0
W tej wersji wprowadzono te zmiany:
Dodanie do systemu iOS funkcji rozszerzonej twarzy. Więcej informacji: to omówienie, krótkie wprowadzenie, i przewodnika dla programistów.
Obsługa rozszerzeń ARCore dla podstawowej działalności firmy Unity AR do tworzenia Androida z Cloud Anchors.
Te zmiany w Cloud Anchors:
- Aby zachować zgodność ze zaktualizowanymi wymaganiami dotyczącymi prywatności podczas korzystania z pakietów SDK ARCore w wersji 1.12 lub później, użytkownik musi umieścić w swoim aplikacji, dodając ten tekst oraz link do dodatkowych informacji na ekranie powiadomienia: „Aby uruchomić tę sesję, Google przetworzy dane wizualne z kamery”. Aby to zrobić, stosuj tag zalecany proces informowania użytkowników dostępny w naszych przykładowych aplikacjach Cloud Anchor.
Więcej informacji znajdziesz w wymaganiach dotyczących prywatności użytkownika.
Więcej informacji o obiektach Cloud Anchor:
Urządzenia z Androidem:
Android NDK:
Urządzenia z iOS:
Wspólnota:
Rozszerzenia ARCore:
Nowości w ARCore w wersji 1.11.0
W tej wersji wprowadzono te zmiany:
Nazwa usługi ARCore została zmieniona na Usługi Google Play dla AR. Na urządzeniach Google Play jest teraz rozpowszechniana w ramach Usług Google Play.
Konfiguracja kamery ARCore ma docelową prędkość 60 kl./s na obsługiwanych urządzeniach w przypadku urządzeń, które go mają, priorytetowo wybiera ten czujnik. Za pomocą nowe filtry konfiguracji kamery ograniczające liczbę klatek do 30 kl./s, uniemożliwi ARCore użycie czujnika głębi lub zastosuj filtr na podstawie obu opcji.
Więcej informacji o konfiguracji kamer:
Urządzenia z Androidem:
Android NDK:
Wspólnota:
Nowości w ARCore w wersji 1.10.0
W tej wersji dodaliśmy nowe funkcje szacowania wpływu oświetlenia HDR na środowisko Lighting Estimation API na Androida, Android NDK i Unity.
Te interfejsy API wykorzystują systemy uczące się do analizowania obrazu wejściowego z aparatu oszacować wpływ oświetlenia środowiskowego. Możesz korzystać z tych danych szacunkowych dotyczących oświetlenia aby renderować niezwykle realistyczne oświetlenie, w tym główne światło kierunkowe, cienie, oświetlenie otoczenia, podświetlenia i odbicia w rzeczywistości wirtualnej obiektów. W efekcie powstają wirtualne treści, które wydają się bardziej realistyczne.
Szczegółowe informacje:
Urządzenia z Androidem:
Android NDK:
Wspólnota:
Nowości w ARCore w wersji 1.9.0
Nowość w pakiecie ARCore SDK na Androida
W tej wersji dodaliśmy nowe interfejsy API i funkcje:
Scene Viewer to niesamowita przeglądarka, która umożliwia korzystanie w Twojej witrynie z funkcji AR. Umożliwia użytkownikom urządzeń mobilnych z Androidem łatwo umieszczać i wyświetlać modele 3D hostowane w internecie, a także z nich korzystać w swoim środowisku.
Nowe funkcje obrazów rozszerzonych:
ARCore śledzi teraz przenoszenie obrazów rozszerzonych. Przykładem ruchomych obrazów może być reklama przejeżdżającego autobusu lub na płaskim obiekcie trzymanym przez użytkownika, gdy porusza on ręką.
Po wykryciu obrazu ARCore może dalej śledzić położenie i orientacja obrazu, nawet jeśli obraz został tymczasowo przesunięty poza pole widzenia kamery.
Użyj
AugmentedImage#getTrackingMethod()
(Java) lubArAugmentedImage_getTrackingMethod()
(NDK), aby określić, czy obraz rozszerzony jest obecnie śledzona przez kamerę (FULL_TRACKING
) lub jest śledzona na podstawie ostatniej znanej pozycji (LAST_KNOWN_POSE
).
Dokumentacja Cloud Anchors zawiera teraz bardziej szczegółowe wyjaśnienie, reklamy zakotwiczone są hostowane i rozpoznawane.
Nowość w pakiecie ARCore SDK na platformę Unity
Nowe funkcje obrazów rozszerzonych:
ARCore śledzi teraz przenoszenie obrazów rozszerzonych. Przykładem ruchomych obrazów może być reklama przejeżdżającego autobusu lub na płaskim obiekcie trzymanym przez użytkownika podczas przesuwania go.
Po wykryciu obrazu ARCore może dalej śledzić położenie i orientacja obrazu, nawet jeśli obraz został tymczasowo przesunięty poza pole widzenia kamery.
Nowa funkcja
AugmentedImage.GetTrackingMethod()
API pozwala aplikacji określić, czy obraz rozszerzony jest obecnie śledzona przez kamerę (FullTracking
) lub jest śledzona na podstawie jego ostatniej znanej pozycji (LastKnownPose
).
Dokumentacja Cloud Anchors zawiera teraz bardziej szczegółowe wyjaśnienie, reklamy zakotwiczone są hostowane i rozpoznawane.
Nowość w pakiecie ARCore SDK na iOS
Obsługa tych urządzeń:
iPad piątej generacji
iPad Air trzeciej generacji
Dokumentacja Cloud Anchors zawiera teraz bardziej szczegółowe wyjaśnienie, reklamy zakotwiczone są hostowane i rozpoznawane.