4. Interaktywne tworzenie sceny

W poprzednim samouczku dodano arSession, Pawn i Game Mode, aby ukończyć konfigurację rzeczywistości mieszanej dla aplikacji szachowej. Ta sekcja koncentruje się na używaniu wtyczki open source Mixed Reality Toolkit UX Tools, która udostępnia narzędzia do interaktywnego tworzenia sceny. Na końcu tej sekcji twoje kawałki szachowe będą przenoszone przez dane wejściowe użytkownika.

Cele

  • Instalowanie wtyczki narzędzi środowiska użytkownika Mixed Reality
  • Dodawanie aktorów interakcji ręcznych do etykietek palców
  • Tworzenie i dodawanie manipulatorów do obiektów w scenie
  • Używanie symulacji danych wejściowych do walidacji projektu

Pobieranie wtyczki narzędzi środowiska użytkownika Mixed Reality

Przed rozpoczęciem pracy z danymi wejściowymi użytkownika należy dodać wtyczkę Mixed Reality UX Tools do projektu. Aby dowiedzieć się więcej o narzędziach środowiska użytkownika, możesz zapoznać się z projektem w witrynie GitHub.

  1. Otwórz aplikację Epic Games Launcher. Przejdź do witryny Unreal Engine Marketplace i wyszukaj ciąg "Mixed Reality narzędzia środowiska użytkownika". Zainstaluj wtyczkę do aparatu.

Unreal Marketplace

  1. W edytorze Unreal przejdź do pozycjiWtyczkiustawień> projektu i wyszukaj ciąg "Mixed Reality narzędzia środowiska użytkownika". Upewnij się, że wtyczka jest włączona i uruchom ponownie edytor, jeśli zostanie wyświetlony monit.

Włączanie wtyczki narzędzi środowiska użytkownika Mixed Reality

  1. Wtyczka narzędzia UXTools zawiera folder Content z podfolderami składników, w tym przycisków, symulacji XR i wskaźników oraz folderu Klasy języka C++ z dodatkowym kodem.

Uwaga

Jeśli w przeglądarce zawartościnarzędzia UXTools nie widzisz sekcji Zawartość narzędzia UXTools, zapoznaj się z tematem Wyświetl opcje > Pokaż zawartość aparatu i *Opcje widoku > Pokaż zawartość wtyczki.

Pokaż zawartość aparatu

Dodatkową dokumentację wtyczki można znaleźć w repozytorium GitHub narzędzi środowiska użytkownika Mixed Reality.

Po zainstalowaniu wtyczki możesz rozpocząć korzystanie z dostępnych narzędzi, począwszy od aktorów interakcji ręcznych.

Aktorzy interakcji odręcznych

Interakcja ręka z elementami środowiska użytkownika odbywa się za pomocą aktorów interakcji ręcznych, które tworzą i napędzają wskaźniki i wizualizacje w celu uzyskania bliskich i dalekich interakcji.

  • Zbliżenie interakcji - szczypanie elementów między palcem indeksu i kciukiem lub poszturjąc je palcem.
  • Dalekie interakcje - wskazując promienie z wirtualnej ręki na element i naciskając indeks i kciuk razem.

W naszym przypadku dodanie aktora interakcji ręcznej do elementu MRPawn spowoduje:

  • Dodaj kursor do wskazówek palca indeksu pionka.
  • Podaj artykułowane zdarzenia wejściowe rąk, które można manipulować za pośrednictwem pionka.
  • Zezwalaj na dalekie zdarzenia wejściowe interakcji poprzez promienie dłoni rozciągające się od dłoni wirtualnych rąk.

Przed kontynuowaniem zalecamy zapoznanie się z dokumentacją dotyczącą interakcji.

Gdy wszystko będzie gotowe, otwórz strategię MRPawn i przejdź do wykresu zdarzeń.

  1. Przeciągnij i zwolnij numer pin wykonywania z elementu Event BeginPlay , aby umieścić nowy węzeł.

    • Wybierz pozycję Spawn Actors z klasy, kliknij listę rozwijaną obok pinezki Klasy i wyszukaj pozycję Uxt Hand Interaction Actors.
  2. Zduplikuj drugi aktor interakcji między rękami uxt, tym razem ustawiając rękę na prawą. Po rozpoczęciu wydarzenia na każdej stronie zostanie zduplikowany aktor interakcji uxt hand.

Wykres zdarzeń powinien być zgodny z następującym zrzutem ekranu:

Spawn UXT Hand Interaction Actors

Zarówno Uxt Hand Interaction Actors potrzebują właścicieli, jak i początkowych lokalizacji transformacji. Początkowa transformacja nie ma znaczenia w tym przypadku, ponieważ narzędzia środowiska użytkownika będą miały aktorów interakcji ręcznych przejść do wirtualnych rąk, gdy tylko będą widoczne. SpawnActor Jednak funkcja wymaga przekształcenia danych wejściowych, aby uniknąć błędu kompilatora, dlatego użyjesz wartości domyślnych.

  1. Przeciągnij i zwolnij pinezkę z jednego z wyprowadzeń transformu spawn , aby umieścić nowy węzeł.

    • Wyszukaj węzeł Make Transform (Utwórz przekształcenie ), a następnie przeciągnij wartość zwracaną z drugiej strony do przekształcenia spawn , aby oba węzły SpawnActor zostały połączone.
  2. Wybierz strzałkę w dół u dołu obu węzłów SpawnActor, aby wyświetlić pinezkęWłaściciela.

    • Przeciągnij pinezkę z jednego z przypięć właściciela i zwolnij, aby umieścić nowy węzeł.
    • Wyszukaj samodzielnie i wybierz pozycję Pobierz odwołanie do zmiennej samodzielnej .
    • Utwórz link między węzłem odwołania do obiektu Self i innym numerem PIN właściciela aktora interakcji.
  3. Na koniec zaznacz pole Pokaż blisko kursora na chwycić elementy docelowe dla obu aktorów interakcji ręcznych. Kursor powinien pojawić się na ściągnięcia celu, gdy palec indeksu zbliża się, aby zobaczyć, gdzie palec jest względny względem celu.

    • Skompiluj, zapisz i wróć do okna Głównego.

Upewnij się, że połączenia są zgodne z poniższym zrzutem ekranu, ale możesz przeciągać wokół węzłów, aby zwiększyć czytelną strategię.

Ukończ konfigurację aktora interakcji między rękami UXT

Więcej informacji na temat aktorów interakcji ręcznych można znaleźć w dokumentacji narzędzi środowiska użytkownika.

Teraz wirtualne ręce w projekcie mają sposób wybierania obiektów, ale nadal nie mogą nimi manipulować. Ostatnim zadaniem przed przetestowaniem aplikacji jest dodanie składników manipulatora do aktorów w scenie.

Dołączanie manipulatorów

Manipulator to składnik, który reaguje na przegubowe dane wejściowe ręki i może zostać złapany, obrócony i przetłumaczony. Zastosowanie transformacji manipulatora do transformacji aktorów umożliwia bezpośrednie manipulowanie aktorami.

  1. Otwórz strategię Tablica , kliknij pozycję Dodaj składnik i wyszukaj pozycję Uxt Generic Manipulator w panelu Składniki .

Dodawanie manipulora ogólnego

  1. Rozwiń sekcję Ogólne manipulator w panelu Szczegóły . Możesz ustawić manipulowanie jedną ręką lub dwiema rękami, tryb rotacji i wygładzania z tego miejsca. Możesz wybrać tryby, które chcesz, a następnie skompilować i zapisać tablicę.

Ustawianie trybu

  1. Powtórz powyższe kroki dla aktora WhiteKing .

Więcej informacji na temat składników manipulatora dostępnych w wtyczki Mixed Reality UX Tools można znaleźć w dokumentacji.

Testowanie sceny

Dobra wiadomość dla wszystkich! Możesz przetestować aplikację przy użyciu nowych wirtualnych rąk i danych wejściowych użytkownika. Naciśnij przycisk Odtwórz w oknie głównym i zobaczysz dwie ręce siatki z promieniami rozciąganymi od dłoni. Możesz kontrolować ręce i ich interakcje w następujący sposób:

  • Przytrzymaj lewy klawisz Alt , aby kontrolować lewą rękę i lewy klawisz Shift , aby kontrolować prawą rękę.
  • Przenieś mysz, aby przesunąć rękę i przewinąć kółko myszy , aby przesunąć rękę do przodu lub do tyłu.
  • Użyj lewego przycisku myszy, aby szczypnąć i środkowy przycisk myszy, aby szturchnąć.

Uwaga

Symulacja wejściowa może nie działać, jeśli masz wiele zestawów słuchawkowych podłączonych do komputera. Jeśli masz problemy, spróbuj odpluć inne zestawy słuchawkowe.

Symulowane ręce w widoku

Spróbuj użyć symulowanych rąk, aby podnieść, przenieść i ustawić biały król szachów i manipulować tablicą! Eksperymentuj zarówno z bliską, jak i daleko interakcji - zwróć uwagę, że gdy ręce są wystarczająco blisko, aby chwycić deskę i króla bezpośrednio, kursor palca na wierzchołku palca indeksu zastępuje promienie ręki.

Więcej informacji na temat funkcji symulowanych rąk dostępnych w wtyczki narzędzi MRTK UX można znaleźć w dokumentacji.

Teraz, gdy twoje ręce wirtualne mogą wchodzić w interakcje z obiektami, możesz przejść do następnego samouczka i dodać interfejsy użytkownika i zdarzenia.

Następna sekcja: 5. Dodawanie przycisku & resetowania lokalizacji elementu