Tworzenie pierwszej aplikacji urządzenia HoloLens Unreal

Ten przewodnik przeprowadzi Cię przez proces uzyskiwania pierwszej aplikacji Mixed Reality uruchomionej na urządzeniu HoloLens w rozwiązaniu Unreal Engine. W tradycji "Hello world" utworzysz prostą aplikację, która wyświetla moduł na ekranie. Aby zwiększyć jego użyteczność, utworzysz również pierwszy gest, aby obrócić moduł i zamknąć aplikację.

Cele

  • Uruchamianie projektu holoLens
  • Włączanie poprawnych wtyczek
  • Tworzenie zasobu danych ARSessionConfig
  • Konfigurowanie danych wejściowych gestów
  • Tworzenie poziomu podstawowego
  • Implementowanie gestu szczypta

Tworzenie nowego projektu

Pierwszą rzeczą, z którą musisz pracować, jest projekt. Jeśli jesteś pierwszym deweloperem Unreal, musisz pobrać pliki pomocnicze z aplikacji Epic Launcher.

  1. Uruchom aparat Unreal Engine
  2. W obszarze Nowe kategorie projektów wybierz pozycję Gry i kliknij przycisk Dalej:

Otwarte okno ostatnio używanych projektów z wyróżnioną pozycją Gry

  1. Wybierz pusty szablon i kliknij przycisk Dalej:

Nierealne okno przeglądarki projektu z wyróżnionym pustym szablonem

  1. W obszarze Ustawienia projektu ustaw pozycję C++, Skalowalne 3D lub 2D, Urządzenia przenośne/tablety i Brak zawartości początkowej, a następnie wybierz lokalizację zapisywania i kliknij pozycję Utwórz projekt

Uwaga

Używasz języka C++ zamiast projektu strategii, aby móc później korzystać z wtyczki OpenXR. W tym przewodniku Szybki start jest używana domyślna wtyczka OpenXR dostarczana z aparatem Unreal Engine. Jednak zalecane jest pobranie i użycie oficjalnej wtyczki Microsoft OpenXR. Wymaga to, aby projekt był projektem C++.

Okno Ustawień projektu z wyróżnionymi opcjami zawartości projektu, wydajności, platformy docelowej i początkowej

Nowy projekt powinien zostać otwarty automatycznie w edytorze Unreal, co oznacza, że jesteś gotowy do następnej sekcji.

Włączanie wymaganych wtyczek

Przed rozpoczęciem dodawania obiektów do sceny należy włączyć dwie wtyczki.

  1. Otwórz pozycję Edytuj > wtyczki i wybierz pozycję Rzeczywistość rozszerzona z listy wbudowanych opcji.
  • Przewiń w dół do urządzenia HoloLens i zaznacz pole wyboru Włączone

Okno wtyczek z otwartą sekcją rzeczywistości rozszerzonej i wyróżnioną funkcją HoloLens

  1. Wpisz OpenXR w polu wyszukiwania w prawym górnym rogu i włącz wtyczki OpenXR i OpenXRMsftHandInteraction :

Okno Wtyczek z włączoną funkcją OpenXR

Okno wtyczek z włączoną funkcją interakcji między rękami open XR

  1. Uruchom ponownie edytor

Uwaga

W tym samouczku użyto biblioteki OpenXR, ale dwie zainstalowane powyżej wtyczki nie udostępniają obecnie pełnego zestawu funkcji na potrzeby programowania na urządzeniu HoloLens. Wtyczka HandInteraction wystarczy do gestu "Pinch", którego będziesz używać później, ale jeśli chcesz przejść poza podstawy, musisz pobrać wtyczkę Microsoft OpenXR.

Po włączeniu wtyczek można skupić się na wypełnieniu jej zawartością.

Tworzenie poziomu

Następnym zadaniem jest utworzenie konfiguracji odtwarzacza z punktem wyjścia i modułem do celów referencyjnych i skalowania.

  1. Wybierz pozycję Plik > nowy poziom i wybierz pozycję Pusty poziom. Domyślna scena w okienku widoków powinna być teraz pusta
  2. Na karcie Tryby wybierz pozycję Podstawowe i przeciągnij pozycję PlayerStart do sceny
  • Na karcie Szczegóły ustaw wartość Lokalizacjana X = 0, Y = 0 iZ = 0 , aby umieścić użytkownika w środku sceny po uruchomieniu aplikacji

Nierealna scena edytora z dodaną lokalizacją i rozpoczęciem odtwarzacza

  1. Na karcie Podstawowe przeciągnij moduł do sceny
  • Ustaw lokalizację sześcianu na X = 50, Y = 0 i Z = 0 , aby ustawić moduł 50 cm od gracza na początku
  • Zmień skalę modułu na X = 0,2, Y = 0,2 i Z = 0,2

Nie widać modułu, chyba że dodasz światło do sceny, czyli ostatnie zadanie przed rozpoczęciem testowania sceny.

  1. Na panelu Tryby przejdź do karty Światła i przeciągnij światło kierunkowe do sceny
  • Umieść światło nad elementem PlayerStart , aby zobaczyć

Nierealna scena edytora z dodanym modułem i światło kierunkowe

  1. Przejdź do pozycji Zapisz plik > bieżący, nadaj poziomowi nazwę Main, a następnie wybierz pozycję Zapisz

Po ustawieniu sceny naciśnij pozycję Odtwórz na pasku narzędzi, aby zobaczyć, jak działa moduł! Po zakończeniu podziwiania pracy naciśnij klawisz Esc, aby zatrzymać aplikację.

Scena w trybie odtwarzania z sześcianem w środku ekranu

Teraz, gdy scena jest skonfigurowana, przygotujmy ją do niektórych podstawowych interakcji w ar. Najpierw należy utworzyć sesję AR i dodać strategie, aby umożliwić interakcję z ręką.

Dodawanie elementu zawartości sesji

Sesje AR w Unreal nie zdarzają się samodzielnie. Do korzystania z sesji potrzebny jest zasób danych ARSessionConfig, z którym należy wykonać następne zadanie:

  1. W przeglądarce zawartości wybierz pozycję Dodaj nowy inny >> zasób danych i upewnij się, że jesteś na poziomie głównego folderu zawartość
  2. Wybierz pozycję ARSessionConfig, kliknij pozycję Wybierz i nadaj elementowi zawartości nazwę ARSessionConfig:

Okno Wybierz klasę zasobów danych otwarte z wyróżnionym elementem zawartości konfiguracji sesji AR

  1. Kliknij dwukrotnie plik ARSessionConfig , aby go otworzyć, Zapisz ze wszystkimi ustawieniami domyślnymi i wróć do okna Głównego:

Okno szczegółów zasobu konfiguracji sesji ar

W tym celu następnym krokiem jest upewnienie się, że sesja AR jest uruchamiana i zatrzymywana po załadowaniu i zakończeniu poziomu. Na szczęście Unreal ma specjalną strategię o nazwie Strategia poziomu , która działa jako globalny wykres zdarzeń na poziomie. Połączenie zasobu ARSessionConfig w strategii poziomu gwarantuje, że sesja AR zostanie uruchomiona bezpośrednio po rozpoczęciu gry.

  1. Na pasku narzędzi edytora wybierz pozycję Strategia strategii > na poziomie otwartym:

Otwarte menu strategii z wyróżnioną opcją strategii na poziomie otwartym

  1. Przeciągnij węzeł wykonywania (ikona strzałki po lewej stronie) z pola Początek zdarzeniaOdtwarzanie i wydanie
  • Wyszukaj węzeł Rozpocznij sesję AR i naciśnij klawisz Enter
  • Kliknij listę rozwijaną Wybierz zasób w obszarze Konfiguracja sesji i wybierz zasób ARSessionConfig

Wykres strategii z rozpoczęciem odtwarzania zdarzeń połączonych z funkcją uruchamiania sesji ar

  1. Kliknij prawym przyciskiem myszy w dowolnym miejscu w usłudze EventGraph i utwórz nowy węzeł EndPlay zdarzeń .
  • Przeciągnij pinezkę wykonywania i zwolnij, a następnie wyszukaj węzeł Zatrzymaj sesję AR i naciśnij klawisz Enter
  • Naciśnij pozycję Kompiluj, a następnie pozycję Zapisz i wróć do okna Głównego

Ważne

Jeśli sesja ar jest nadal uruchomiona po zakończeniu poziomu, niektóre funkcje mogą przestać działać w przypadku ponownego uruchomienia aplikacji podczas przesyłania strumieniowego do zestawu nagłownego.

Węzeł odtwarzania końcowego zdarzeń dołączony do funkcji zatrzymania sesji ar

Konfigurowanie danych wejściowych

  1. Wybierz pozycję Edytuj > ustawienia projektu i przejdź do danych wejściowych aparatu >
  2. Wybierz ikonę + obok pozycji Mapowania akcji i utwórz akcje RightPinch i LeftPinch :

Wiązanie ustawień danych wejściowych z wyróżnionymi mapowaniami akcji z prawej i lewej

  1. Zamapuj akcje RightPinch i LeftPinch na odpowiednie akcje interakcji ręcznej biblioteki OpenXR Msft :

Mapowania akcji z wyróżnionymi opcjami interakcji open XR Msft Hand

Konfigurowanie gestów

Teraz, gdy skonfigurowaliśmy dane wejściowe, możemy przejść do ekscytującej części: dodawanie gestów! Umożliwia obracanie sześcianu po prawej szczypcie i zamykanie aplikacji po lewej szczyptę.

  1. Otwórz strategię poziomu i dodaj element InputAction RightPinch i InputAction LeftPinch
  • Połącz odpowiednie zdarzenie szczypta z elementem AddActorLocalRotationz modułem jako elementem docelowym, a rotacja różnicowa ustawiona na wartość X = 0, Y = 0 i Z = 20. Moduł będzie teraz obracał się o 20 stopni za każdym razem, gdy szczypta
  • Łączenie zdarzeń z lewej szczypty do zakończenia gry

Otwieranie bluprint na poziomie z akcjami wejściowymi dla zdarzeń z prawej i lewej szczypty

  1. W ustawieniach przekształcania modułu ustaw opcję Mobilność na Wartość Wymienna , aby umożliwić dynamiczne przenoszenie:

Ustawienia transformularza z wyróżnioną właściwością mobilności

Na tym etapie możesz przystąpić do wdrażania i testowania aplikacji.