Spisu treści:

Aplikacja Augmented Reality dla początkujących: 8 kroków
Aplikacja Augmented Reality dla początkujących: 8 kroków

Wideo: Aplikacja Augmented Reality dla początkujących: 8 kroków

Wideo: Aplikacja Augmented Reality dla początkujących: 8 kroków
Wideo: National Geographic Augmented Reality experience by INDE 2024, Listopad
Anonim
Aplikacja Augmented Reality dla początkujących
Aplikacja Augmented Reality dla początkujących
Aplikacja Augmented Reality dla początkujących
Aplikacja Augmented Reality dla początkujących

Ten samouczek pokaże Ci, jak stworzyć aplikację rozszerzonej rzeczywistości dla początkujących. Wykorzystamy wykrywanie płaszczyzny naziemnej Unity3D i Vuforia, aby stworzyć aplikację AR bez znaczników na Androida lub IOS. Przejdziemy przez dodanie modelu 3D do Unity i przenoszenie go za pomocą mobilnego joysticka. Ta metoda będzie również działać z każdym innym bezpłatnym modelem 3D, który możesz znaleźć.

Krok 1: Czy to zadziała na Twoim telefonie?

Czy to zadziała na Twoim telefonie?
Czy to zadziała na Twoim telefonie?

Przede wszystkim musimy upewnić się, że Twój telefon obsługuje wykrywanie płaszczyzny naziemnej Vuforia, więc upewnij się, że Twój telefon znajduje się na liście obsługiwanych urządzeń.

library.vuforia.com/articles/Solution/Vufo…

Jedyne, czego będziesz potrzebować jako oprogramowanie, to darmowa wersja Unity. Jeśli jeszcze go nie masz, przejdź do Unity3d.com i kliknij pobierz Unity. Teraz używam wersji 2018.2.0, jeśli ta wersja nie jest już dostępna, przejdź do starszych wersji Unity i pobierz 2018.2.0.

Podczas procesu instalacji upewnij się, że zainstalowałeś pakiety dla systemu IOS lub Android w zależności od typu posiadanego telefonu i upewnij się, że zainstalowałeś obsługę Vuforia.

Krok 2: Rozpocznij nowy projekt Unity

Rozpocznij nowy projekt Unity
Rozpocznij nowy projekt Unity

Rozpocznij nowy projekt Unity i usuń główną kamerę. Na górnym pasku menu przejdź do obiektu gry, vuforia i dodaj "ARCamera".

Zanim cokolwiek będzie działać, musimy włączyć Vuforia, więc przejdź do ustawień kompilacji plików, przełącz platformę, ustawienia XR i włącz obsługę rozszerzonej rzeczywistości Vuforia.

Kliknij obiekt gry „ARCamera”, a w inspektorze kliknij Konfiguracja Vuforia. Na dole włącz śledzenie urządzenia i zmień tryb śledzenia na pozycyjny.

Dodaj płaszczyznę naziemną i wyszukiwarkę samolotów z tego samego menu Vuforia, z którego dostałeś kamerę.

W wyszukiwarce samolotów zmień menu rozwijane na interaktywne, usuń zaznaczenie zduplikowanej sceny i przeciągnij obiekt sceny płaszczyzny podłoża do pustego miejsca na zakotwiczenie sceny w wyszukiwarce samolotów.

Teraz musimy dodać nasz joystick, więc w górnym menu przejdź do zasobów, pakietu importu, danych wejściowych między platformami.

W nowo dodanym folderze zasobów standardowych przejdź do prefabrykatów i przeciągnij mobilny prefabrykat sterowania jednym drążkiem na scenę.

Usuń przycisk skoku. Kliknij prawym przyciskiem myszy w hierarchii i dodaj interfejs użytkownika, system zdarzeń.

Na koniec na głównym obiekcie gry joysticka kliknij, aby dodać komponent i dodać skaler płótna. Zmień jego menu rozwijane, aby skalować z rozmiarem ekranu. W skrypcie joysticka zmień zakres ruchu na 25.

Krok 3: Utwórz przełącznik

Utwórz przełącznik
Utwórz przełącznik

Teraz domyślnym zachowaniem pozycjonowania treści jest zmiana położenia sceny płaszczyzny podłoża za każdym razem, gdy klikniemy na ekranie. Obejmuje to również klikanie obiektów interfejsu użytkownika, takich jak przyciski lub joysticki, więc nie jest to tym, czego chcemy. Ponieważ Vuforia obecnie nie pozwala na edycję zachowania pozycjonowania treści w celu rozwiązania tego problemu, możemy albo napisać własne od zera, albo ze względu na ten samouczek stworzymy po prostu przełącznik, który włącza lub wyłącza tę funkcję.

Kliknij prawym przyciskiem joystick i utwórz interfejs użytkownika, przełącz. Rozwiń wszystko i zmień kolory lub tekst, jeśli chcesz.

W sekcji przełącznika przy zmianie wartości dodaj wyszukiwarkę samolotów i ustaw ją jako aktywną na podstawie wartości przełącznika. Teraz, gdy obiekt zostanie umieszczony w świecie, prawdopodobnie powinniśmy wyłączyć przełącznik, więc przejdź do zachowania pozycjonowania treści i przeciągnij przełącznik do pozycji włączonej treści i ustaw przełącznik w pozycji wyłączonej.

Krok 4: POTWÓR

POTWÓR!
POTWÓR!

Przejdź do okna, ogólne i dodaj okno magazynu zasobów.

Wyszukaj „potwór postaci” i sortuj według za darmo, pobierz pierwszy wynik i zaimportuj ten.

Przeciągnij prefabrykat potwora pod scenę, czyniąc z niego dziecko. Ustaw jego pozycję i obrót na zero. Ustaw jego skalę x y i z na.1.

Przejdź do animatora i usuń wszystko oprócz wpisu. Przeciągnij animacje chodzenia i bezczynności z folderu animacji potwora.

W sekcji parametrów kliknij przycisk plus i dodaj dwa wyzwalacze „spacer” i „idle”.

Kliknij każdą animację i dodaj przejście do drugiej.

Kliknij każde przejście i dodaj warunek, wstaw chód dla pierwszego i bezczynny dla drugiego. Odznacz ma czas wyjścia i przeciągnij wszystkie suwaki do 0 na każdym z nich.

Teraz chcemy, aby każda animacja była zapętlona, więc kliknij każdą animację i przejdź do jej klipu. Kliknij edytuj na każdym z nich i sprawdź czas pętli.

Krok 5: Kontrolowanie naszego charakteru

Kontrolowanie naszego charakteru
Kontrolowanie naszego charakteru

Kliknij prawym przyciskiem myszy w folderze zasobów i utwórz skrypt C# o nazwie „CharacterController” i dodaj to:

za pomocą System. Collections;

za pomocą System. Collections. Generic; za pomocą UnityEngine; przy użyciu UnityStandardAssets. CrossPlatformInput; public class CharacterController: MonoBehaviour { private const float speed =.1f; prywatna animacja Animatora; // Użyj tego do inicjalizacji void Start () { anim = GetComponent (); } // Aktualizacja jest wywoływana raz na ramkę void Update() { //przenieś znak z wejścia joysticka float x = CrossPlatformInputManager. GetAxis ("Horizontal"); float y = CrossPlatformInputManager. GetAxis ("Pionowo"); if (!x. Equals(0) && !y. Equals (0)) { transform.eulerAngles = new Vector3 (transform.eulerAngles.x, Mathf. Atan2 (x, y) * Mathf. Rad2Deg, transform.eulerAngles.z); } if (!x. Equals (0) || !y. Equals (0)) { transform.position += transform.forward * Time.deltaTime * speed; anim. SetTrigger ("spacer"); } else { anim. SetTrigger ("bezczynny"); } } public void PlaceCharacter() { transform.localPosition = Vector3.zero; } }

Krok 6: Pozwól mi wyjaśnić

Pozwól mi wyjaśnić
Pozwól mi wyjaśnić

Przede wszystkim na górze mamy zdefiniowaną stałą wartość zmiennoprzecinkową, więc jeśli chcesz, aby twój potwór poruszał się szybciej lub wolniej, po prostu zmień tę wartość.

Ten skrypt zostanie dodany do naszego potwora, abyśmy mogli zrobić coś takiego jak "GetComponent()" w celu uzyskania odniesienia do tego Animatora potworów (w ten sposób możemy odtwarzać animacje z kodu).

Następnie uzyskujemy ruchy xiy joysticka z menedżera wprowadzania danych między platformami i zapisujemy je w zmiennej.

Następnie używamy tych dwóch zmiennych, aby obracać i przesuwać potwora zgodnie z wejściem joysticka.

Jeśli potwór się porusza, odtwarzamy animację chodzenia, a jeśli się nie porusza, odtwarzamy animację bezczynności.

Ostatnią funkcją, jaką mamy, jest ustawianie lokalnej pozycji potworów z powrotem na zero za każdym razem, gdy płaszczyzna podłoża zostanie przesunięta. Tak więc sposób, w jaki nasza aplikacja jest teraz skonfigurowana, Vuforia zmieni położenie sceny naziemnej za każdym razem, gdy klikniemy ekran. Nasz potwór może poruszać się po scenie, więc musimy ustawić jego pozycję z powrotem na zero względem sceny za każdym razem, gdy jest zmieniany.

Krok 7: Ostatnie szlify

Ostatnie poprawki!
Ostatnie poprawki!

Na koniec musimy tylko dodać nasz CharacterController.cs do naszego potwora. Przejdź więc do głównej transformacji prefabrykatu potwora w hierarchii i kliknij go. To podciągnie go na inspektora po prawej stronie. Kliknij dodaj komponent i wyszukaj skrypt kontrolera postaci. Dodaj to.

Musimy również upewnić się, że nasza funkcja PlaceCharacter faktycznie zostanie wywołana, więc przejdź do obiektu gry w wyszukiwarkę samolotów i kliknij go.

W inspektorze powinna znajdować się zaawansowana sekcja, którą możesz kliknąć, aby rozwinąć. Jest tam wydarzenie Unity o nazwie „OnContentPlaced”. Dodaj do tego funkcję, klikając przycisk plus. Przeciągnij potwora do pustego miejsca, wybierz skrypt kontrolera postaci, a na koniec wybierz funkcję „PlaceCharacter”.

Krok 8: Pobierzmy to na Twój telefon

Pobierzmy to na Twój telefon
Pobierzmy to na Twój telefon

Jeśli korzystasz z systemu Android lub IOS, kliknij plik, ustawienia kompilacji i przejdź do ustawień odtwarzacza dla odpowiedniej platformy. W obu przypadkach upewnij się, że wpisałeś coś dla identyfikatora pakietu (w postaci "com. TwojaNazwa. NazwaTwojejAplikacji"). Upewnij się również, że w polu opisu użytkowania aparatu znajduje się wiadomość.

Jeśli korzystasz z Androida, odznacz zgodność z Android TV i zmień minimalny cel kompilacji na Nougat.

Albo naciśnij kompiluj i uruchom, albo naciśnij kompiluj i zainstaluj.apk za pomocą ADB lub Android Studio.

Jeśli korzystasz z systemu IOS, naciśnij kompilację, a następnie otwórz powstały folder w XCode. Zarejestruj się, aby otrzymać bezpłatne konto programisty Apple (jeśli jeszcze go nie mamy) wybierz swój zespół i naciśnij przycisk odtwarzania, aby pobrać go na swój telefon!

Dajcie znać w komentarzach, jeśli macie jakieś pytania!

Zalecana: