Dowiedz się, jak korzystać z obrazów rozszerzonych w swoich aplikacjach.
Wymagania wstępne
Zanim przejdziesz dalej, przeczytaj podstawowe zagadnienia dotyczące AR i skonfiguruj sesję ARCore.
Tworzenie i uruchamianie przykładowej aplikacji
Utwórz nowy projekt w Unity na podstawie krótkiego wprowadzenia.
Tworząc aplikację, pamiętaj, aby dołączyć do nich urozmaiconą scenę graficzną stworzoną w Assets/GoogleARCore/Examples/AugmentedImage/Scenes/
.
Upewnij się, że urządzenie jest połączone z komputerem, a następnie kliknij Utwórz i uruchom. Unity tworzy projekt w pliku APK na Androida, instaluje go na urządzeniu i uruchamia.
Gdy poruszasz urządzeniem, aplikacja automatycznie wykrywa i śledzi obrazy z zestawu obrazów referencyjnych, które znajdują się pod adresem Assets/GoogleARCore/Examples/AugmentedImage/Images/
.
Utwórz plik bazy danych
W oknie Project (Projekt) wybierz zestaw obrazów referencyjnych (PNG lub JPG), a następnie kliknij prawym przyciskiem myszy i wybierz Create > Google ARCore > AugmentedImageDatabase.
Nowa baza danych obrazów zostanie utworzona w tym samym folderze co obrazy referencyjne.
W oknie Inspektor zobaczysz obrazy w bazie danych oraz wynik jakości. System może mieć problem z wykrywaniem obrazów o wyniku jakości poniżej 75.
Opcjonalnie możesz określić fizyczną szerokość (w metrach) każdego obrazu. Gdy to zrobisz, ARCore może oszacować położenie fizycznego obrazu w czasie działania, gdy tylko wykryje ten obraz. Użytkownik nie musi zmieniać położenia urządzenia, na którym ma się wyświetlać, z różnych punktów widzenia.
Użyj pliku bazy danych
W oknie Projekt przejdź do
Assets/GoogleARCore/Examples/AugmentedImage/Configurations
i otwórzAugmentedImagesSessionConfig
.W Inspektorze kliknij pole obok opcji Augmented Data Data (Baza danych obrazów rozszerzonych) i wybierz utworzony przez siebie plik bazy danych.
Pobierz AugmentedImage
Zobacz przykład AugmentedImageExampleController.cs
w Assets/GoogleARCore/Examples/AugmentedImage/Scripts
: przykład, który umożliwia śledzenie:
Session.GetTrackables<AugmentedImage>(myList, TrackableQueryFilter.Updated);
Pomoc w różnych przypadkach użycia
Gdy ARCore wykryje obraz rzeczywistości, tworzy dla niego Trackable
i ustawia wartość TrackingState
na Tracking
oraz AugmentedImageTrackingMethod
na FullTracking
. Po przeniesieniu zdjęcia z widoku kamery ARCore zmienia wartość AugmentedImageTrackingMethod
na LastKnownPose
, zachowując nadal orientację i położenie obrazu.
Aplikacja powinna używać tych liczników w różny sposób, w zależności od konkretnego przypadku użycia.
Stałe obrazy. Większość przypadków użycia dotyczących zdjęć, które zostały naprawione (czyli nie powinny się poruszać), może po prostu użyć
TrackingState
do określenia, czy obraz został wykryty i czy jest znana jego lokalizacja.AugmentedImageTrackingMethod
można zignorować.Przenoszenie obrazów. Jeśli Twoja aplikacja musi śledzić ruchomy obraz, użyj właściwości
TrackingState
iAugmentedImageTrackingMethod
, aby określić, czy obraz został wykryty i czy jest w stanie ustalić jego pozycję.
Przypadek użycia | Stały obraz | Ruchomy obraz |
---|---|---|
Przykład | Plakat na ścianie | Reklama z boku autobusu |
Pozycja może być uznana za prawidłową, |
TrackingState == Tracking |
TrackingState == Tracking
i AugmentedImageTrackingMethod == FullTracking
|