Google jest zaangażowany w promowanie równości rasowej dla społeczności czarnych. Zobacz jak.
Ta strona została przetłumaczona przez Cloud Translation API.
Switch to English

Omówienie Cloud Anchors dla ARCore Extensions for AR Foundation

Użyj kotwic w chmurze, aby tworzyć wieloosobowe lub oparte na współpracy środowiska AR, które mogą udostępniać użytkownicy systemów Android i iOS.

Co to jest kotwica chmurowa?

Korzystając z Cloud Anchors, Twoja aplikacja umożliwia użytkownikom dodawanie wirtualnych obiektów do sceny AR. Wielu użytkowników może następnie wyświetlać te obiekty i wchodzić z nimi w interakcję jednocześnie z różnych pozycji we wspólnej przestrzeni fizycznej.

Kotwice w chmurze działają i działają podobnie jak kotwice , ale różnią się tym, że są hostowane w usłudze ARCore Cloud Anchor. Ten hosting umożliwia użytkownikom dzielenie się doświadczeniami.

Jak działają kotwice w chmurze?

Aby umożliwić te wspólne doświadczenia, ARCore łączy się z usługą ARCore Cloud Anchor w celu hostowania i rozwiązywania zakotwiczeń. Wymaga to działającego połączenia internetowego.

Hostowanie i rozwiązywanie obejmuje następujące kroki na wysokim poziomie:

  1. Użytkownik tworzy lokalną kotwicę w swoim środowisku.

  2. Podczas hostingu ARCore przesyła dane kotwicy do usługi ARCore Cloud Anchor, która zwraca unikalny identyfikator dla tej kotwicy.

  3. Aplikacja rozsyła unikalny identyfikator innym użytkownikom.

  4. Podczas rozwiązywania użytkownicy z unikalnym identyfikatorem mogą odtworzyć tę samą kotwicę za pomocą usługi ARCore Cloud Anchor.

Aby zapewnić użytkownikom dobre wrażenia z korzystania z Cloud Anchors, należy szczegółowo zapoznać się z procesem hostingu, aby można było dostosować projekt aplikacji, aby pomóc użytkownikom odnieść sukces.

Ustanowienie i hostowanie kotwicy

Aby ustanowić i hostować kotwicę, ARCore wykorzystuje trójwymiarową mapę obiektów przestrzeni otaczającej kotwicę (centrum zainteresowania). Aby uzyskać tę mapę funkcji, tylna kamera urządzenia musi mapować środowisko w centrum zainteresowania i wokół niego z różnych kątów widzenia i pozycji w ciągu 30 sekund przed wywołaniem hosta ( ARAnchorManager.HostCloudAnchor ).

Począwszy od ARCore SDK 1.12.0, to wywołanie hosta powoduje, że ARCore przesyła wybrane dane wizualne z ostatnich 30 sekund z aparatu urządzenia do usługi ARCore Cloud Anchor, która przetwarza dane wizualne w celu utworzenia mapy funkcji 3D i zwrócenia kotwicy do chmury ID.

Prawidłowe utworzenie mapy obiektów 3D ma kluczowe znaczenie dla doskonałego doświadczenia użytkownika. W przeciwnym razie jakość odwzorowania może być ograniczona, co utrudni rozwiązanie. Aby poprawić jakość mapy, zalecamy, aby interfejsy użytkownika wyraźnie instruowały użytkowników, aby mapowali jak najwięcej środowiska wokół centrum zainteresowania, jak to możliwe, przesuwając urządzenie wokół lokalnej kotwicy pod różnymi kątami i pozycjami.

Aby hostować kotwicę w chmurze:

  1. Poczekaj kilka sekund po rozpoczęciu sesji, aby umożliwić śledzenie ustabilizowanie się przed próbą hostowania kotwicy.

  2. Wybierając miejsce na umieszczenie kotwicy, spróbuj znaleźć obszar z cechami wizualnymi, które można łatwo odróżnić od siebie - na przykład narożnik z wizualnie odrębnymi cechami.

  3. Skieruj tylną kamerę urządzenia na środek zainteresowania , czyli obszar otaczający punkt, w którym chcesz umieścić kotwicę.

  4. Trzymając kamerę wytrenowaną w centrum zainteresowania i z grubsza utrzymując fizyczną odległość między urządzeniem a centrum zainteresowania, przesuwaj urządzenie, aby odwzorować otoczenie pod różnymi kątami widzenia i pozycjami przez maksymalnie 30 sekund . Chodzenie po przestrzeni, podczas gdy kamera urządzenia jest wyszkolona w centrum zainteresowania, pozwoli uchwycić wizualne cechy obszaru zainteresowania ze wszystkich stron, czyniąc rozdzielczość bardziej niezawodną.

  5. Wywołaj ARAnchorManager.HostCloudAnchor aby zainicjować żądanie hostingu.

  6. ARCore przesyła dane wizualne, pozy urządzeń i pozycję kotwicy za pośrednictwem interfejsu API ARCore Cloud Anchor.

  7. Usługa ARCore Cloud Anchor tworzy trójwymiarową mapę elementów przestrzeni i zwraca unikalny identyfikator Cloud Anchor dla kotwicy do urządzenia.

  8. Użyj CloudAnchorState aby sprawdzić stan hostowanej kotwicy (w tym komunikaty obsługi błędów).

Usługa ARCore Cloud Anchor tworzy trójwymiarową mapę obiektów przestrzeni i zwraca do urządzenia unikalny identyfikator Cloud Anchor.

Kotwica powinna być hostowana.

CloudAnchorState umożliwia sprawdzenie stanu hostowanej kotwicy (w tym komunikatów obsługi błędów).

Rozwiązywanie poprzednio hostowanej kotwicy

Gdy inny użytkownik w tym samym środowisku ARAnchorManager.ResolveCloudAnchorId kamerę swojego urządzenia na obszar, w którym była hostowana kotwica do chmury, żądanie rozwiązania ( ARAnchorManager.ResolveCloudAnchorId ) powoduje, że usługa ARCore Cloud Anchor okresowo porównuje funkcje wizualne ze sceny z mapą obiektów 3D utworzony, którego ARCore używa do określenia pozycji i orientacji użytkownika względem kotwicy chmury. Dlatego ważne jest, aby wykorzystać 30 sekund poprzedzających żądanie hostingu, aby zmapować jak najwięcej środowiska wokół centrum zainteresowania.

Możesz inicjować rozwiązania dla wielu kotwic w chmurze po kolei. Do 20 kotwic chmur może być rozwiązanych jednocześnie.

Korzystając z tego samego lub innego urządzenia niż urządzenie hostujące, wykonaj następujące kroki, aby rozwiązać hostowaną kotwicę. Host może pobrać i udostępnić identyfikator za pomocą właściwości ARCloudAnchor.cloudReferenceId .

  1. Poczekaj kilka sekund po rozpoczęciu sesji, aby umożliwić śledzenie ustabilizowanie się, zanim spróbujesz rozwiązać zakotwiczenie.

  2. W tym samym środowisku, w którym znajduje się hostowana kotwica, przeskanuj oryginalny obszar zainteresowania , upewniając się, że:

    • Kamera urządzenia ma wyraźną linię wzroku na mapowany obszar

    • Kamera urządzenia znajduje się w podobnej odległości od hostowanej kotwicy, co urządzenie, które pierwotnie hostowało kotwicę.

  3. Wywołaj ARAnchorManager.ResolveCloudAnchorId i użyj CloudAnchorState aby okresowo sprawdzać stan żądania rozwiązania .

  4. ARCore stale sonduje interfejs API ARCore Cloud Anchor, wysyłając dane wizualne do usługi ARCore Cloud Anchor.

  5. Usługa ARCore Cloud Anchor porównuje elementy wizualne ze sceny z utworzoną mapą obiektów 3D. Gdy znajdzie dopasowanie, usługa zwraca pozę Kotwicy w chmurze .

Urządzenie powinno odpytywać stan CloudAnchorState rozwiązanej kotwicy w chmurze, aż zgłosi gotowość lub zgłosi błąd.

Wymagania dotyczące prywatności w Cloud Anchor

Aby zapewnić zgodność z naszymi nowymi wymogami ochrony prywatności za korzystanie ARCORE SDK 1.12.0 lub nowszej, należy ujawniają zastosowanie cloud Kotwy widocznym miejscu. Aby uzyskać szczegółowe informacje, zapoznaj się z wymaganiami dotyczącymi prywatności użytkowników .

Przechowywanie danych i ograniczenia dostępu

Cloud Anchors mają następujące ograniczenia przechowywania i dostępu do danych:

  • W ARCore 1.20 i nowszych zakotwiczeniach w chmurze można rozwiązać problem przez 365 dni po ich udostępnieniu. (W wersjach ARCore wcześniejszych niż 1.20 zakotwiczenia w chmurze można było rozwiązać tylko przez 24 godziny po ich udostępnieniu). Możesz przedłużyć żywotność kotwicy, gdy jest już hostowana przy użyciu interfejsu Cloud Anchor Management API .

  • Dane wizualne przesłane do chmury podczas hostowania kotwicy są odrzucane w ciągu dwudziestu czterech godzin.

  • Kotwice są rozwiązywane na serwerze względem mapy elementów 3D.

  • Wcześniej przesłane dane wizualne nigdy nie są wysyłane na urządzenie użytkownika.

Najlepsze praktyki zapewniające dobre wrażenia użytkownika

Poniższe sprawdzone metody ułatwiają tworzenie dobrych doświadczeń użytkowników Cloud Anchors.

  • Pamiętaj, że zainicjowanie połączenia hosta wykorzystuje poprzednie 30 sekund mapowania do stworzenia mapy obiektów 3D. Upewnij się, że interfejs użytkownika aplikacji bierze to pod uwagę.

  • Zastanów się nad utworzeniem czynności lub funkcji, które są zabawne lub mogą być przydatne dla użytkowników (lub obu), gdy użytkownicy poruszają się po centrum zainteresowania, a to również spełnia zadanie tworzenia odpowiedniej mapy obiektów 3D.

  • Unikaj hostowania lub rozwiązywania problemów z kotwicami w chmurze na niektórych rodzajach powierzchni.

    • Aby uzyskać najlepsze wyniki, użytkownicy powinni unikać odblaskowych powierzchni lub powierzchni bez cech wizualnych, takich jak pusta, gładka, biała ściana.
  • Upewnij się, że oświetlenie w pomieszczeniu jest wystarczające.

Zasady wycofywania

Aplikacje utworzone przy użyciu pakietu ARCore SDK w wersji 1.12.0 lub nowszej są objęte zasadami wycofywania Cloud Anchor API .

Aplikacje utworzone przy użyciu pakietu ARCore SDK w wersji 1.11.0 lub starszej nie mogą hostować ani rozwiązywać kotwic w chmurze, ponieważ pakiet SDK używa starszej, wycofanej usługi ARCore Cloud Anchor.

Zaczynaj

Jeśli nie masz doświadczenia w pracy z kotwicami, zapoznaj się z wprowadzeniem Praca z kotwicami .

Aby rozpocząć korzystanie z Cloud Anchors dla rozszerzeń ARCore, zobacz: