Możliwe spowolnienie działania witryny

Aby tworzyć atrakcyjne i atrakcyjne dla użytkowników AR, Twoja aplikacja z AR powinna działać sprawnie.

Upewnij się, że aplikacja:

  • Czułość reakcji użytkownika, w tym gesty dotykowe i ruchy urządzenia.
  • Renderuje przy rozsądnej i spójnej liczbie klatek. Użytkownicy preferują spójne liczby klatek i spadają ich liczby w porównaniu ze zmiennymi lub wyższymi.
  • Zmniejsza obciążenie baterii, umożliwiając użytkownikowi używanie urządzenia do wykonywania innych zadań w ciągu dnia lub dłuższego korzystania z rzeczywistości rozszerzonej.
  • Buduje atrakcyjną stronę AR, w której treści wygenerowane w rzeczywistości rozszerzonej są stabilne względem środowiska, a racjonalnie wtapiają się w to środowisko.

Sprawdzone metody zwiększania skuteczności

Aby tworzyć bardziej atrakcyjne projekty AR, pamiętaj o tych sprawdzonych metodach.

Aby zwiększyć skuteczność śledzenia, użyj kotwic

Chociaż można umieszczać treści 3D za pomocą współrzędnych świata, zawsze użyj kotwicy, jeśli to możliwe. ARCore gwarantuje, że kotwice wyglądają na stabilne względem świata, mimo że podstawowe współrzędne w przestrzeni globalnej zmieniają się i mogą się skakać z czasem, gdy ARCore zaktualizuje swoje zrozumienie świata.

Obiekty wirtualne, które nie są dołączone do kotwicy, mogą czasem przeskakiwać i nie są stabilne względem środowiska. Może to zmniejszyć atrakcyjność AR dla użytkowników.

Przeanalizuj dane o wydajności na konkretnych urządzeniach

Urządzenia obsługujące ARCore obejmują szeroki zakres sprzętu i wydajności. Wydajność urządzenia może się różnić z tych powodów:

  • CPU/GPU urządzenia, szybkość zegara
  • Dostępna pamięć i przepustowość
  • Jakość czujnika do aparatu/IMU
  • Inne różnice w sprzęcie
  • Sterowniki systemu operacyjnego i urządzenia

Zalecamy przetestowanie aplikacji na różnych klasach urządzeń, które odzwierciedlają możliwości urządzeń używanych przez użytkowników.

Wyłącz funkcje intensywnie działające, gdy nie są używane

Niektóre funkcje ARCore zwiększają wykorzystanie procesora, gdy są włączone. Rozważ wyłączenie tych funkcji w godzinach, w których AR ich nie wymaga. Dzięki temu aplikacja będzie miała dostęp do dodatkowych cykli procesora, co pozwoli zwiększyć wydajność termiczną i baterię.

Obecnie użycie procesora ARCore wzrasta, gdy włączone jest Instant Placement lub Augmented Images w bieżącej sesji. Aby zwiększyć wykorzystanie procesora, skorzystaj z tych wskazówek:

  • Instant Placement należy wyłączyć po skonfigurowaniu pełnego śledzenia. Tę funkcję można wyłączyć w konfiguracji sesji.

  • Funkcja Augmented Images powinna być wyłączona zawsze, gdy ta funkcja nie jest wymagana w Twojej usłudze AR. Aby wyłączyć obrazy rozszerzone, skonfiguruj null lub pustą bazę danych w konfiguracji sesji.

Monitorowanie termowizorów urządzeń

Podczas programowania i kontroli jakości możesz używać interfejsów API termowizyjnych na Androida, by monitorować i śledzić działanie aplikacji na urządzeniu.

Pamiętaj, by używać kompilacji wersji produkcyjnej aplikacji, a nie jej rozwoju czy qa, które mogą mieć różne wyniki działania.

Określ niewystarczający procesor ARCore

Gdy sesja ARCore jest aktywna, aplikacja musi współdzielić z ARCore ograniczone zasoby procesora mobilnego i GPU. Aplikacje powiązane z CPU mogą rywalizować z zasobami procesora wymaganymi do śledzenia ruchu.

Aby sprawdzić, czy jednoczesna lokalizacja i mapowanie ARCore są prawidłowe, upewnij się, że "Niska częstotliwość Viom&quot nie pojawia się w dziennikach urządzeń z Androidem:

adb logcat | grep 'VIO frequency low'

Unikaj głodu procesorów ARCore

Gdy sesja ARCore jest aktywna, aplikacja musi udostępniać ARCore ograniczone urządzenia mobilne i zasoby GPU. Aplikacje powiązane z CPU mogą rywalizować z zasobami procesora wymaganymi do śledzenia ruchu.

Wstępne tworzenie baz danych zdjęć rozszerzonych

W miarę możliwości wstępnie utwórz bazy danych obrazów rozszerzonych. Jeśli musisz utworzyć bazy danych obrazów rozszerzonych w czasie działania lub dynamicznie dodawać obrazy do istniejącej bazy danych, pamiętaj o dodaniu ich do wątku w tle, aby uniknąć zablokowania głównego wątku UI.

Ogranicz liczbę żądanych strumieni kamery

Jeśli używasz udostępnianej kamery Java, aplikacje mogą żądać dodatkowych strumieni danych z procesora lub GPU.