Share via


4. Gör din scen interaktiv

I den föregående självstudien lade du till en ARSession, Pawn och Game Mode för att slutföra installationen av mixad verklighet för schackappen. Det här avsnittet fokuserar på att använda plugin-programmet öppen källkod Mixed Reality Toolkit UX Tools, som innehåller verktyg för att göra scenen interaktiv. I slutet av det här avsnittet kommer dina schackbitar att flyttas med användarindata.

Mål

  • Installera plugin-programmet Mixed Reality UX Tools
  • Lägga till Hand Interaction Actors till dina fingertoppar
  • Skapa och lägga till manipulatorer i objekt i scenen
  • Använda indatasimulering för att verifiera projektet

Ladda ned plugin-programmet Mixed Reality UX Tools

Innan du börjar arbeta med användarindata måste du lägga till plugin-programmet Mixed Reality UX Tools i projektet. Om du vill veta mer om UX-verktyg kan du kolla in projektet på GitHub.

  1. Öppna Epic Games Launcher. Gå till Unreal Engine Marketplace och sök efter "Mixed Reality UX Tools". Installera plugin-programmet i motorn.

Unreal Marketplace

  1. Gå tillbaka till Plugin-programmet För projektinställningar> i Unreal-redigeraren och sök efter "Mixed Reality UX Tools". Kontrollera att plugin-programmet är aktiverat och starta om redigeraren om du uppmanas att göra det.

Aktivera plugin-programmet Mixed Reality UX Tools

  1. UXTools-plugin-programmet har en innehållsmapp med undermappar för komponenter, inklusive knappar, XR-simulering och pekare samt en C++-klassmapp med ytterligare kod.

Anteckning

Om du inte ser avsnittet UXTools-innehåll i innehållsläsaren, markerar du Visa alternativ > Visa motorinnehåll och *Visa alternativ > Visa plugin-innehåll.

Visa motorinnehåll

Ytterligare dokumentation om plugin-program finns på github-lagringsplatsen Mixed Reality UX Tools.

När plugin-programmet är installerat är du redo att börja använda de verktyg som det har att erbjuda, med början med handinteraktionsaktörer.

Spawning Hand Interaction Actors

Handinteraktion med UX-element görs med Hand Interaction Actors, som skapar och driver pekare och visuella objekt för nära och långt interaktioner.

  • Nära interaktioner – nypa element mellan pekfinger och tumme eller genom att peta dem med en fingertopp.
  • Långt interaktioner – peka en stråle från den virtuella handen mot ett element och trycka på index och tumme tillsammans.

I vårt fall kommer att lägga till en handinteraktionsskådespelare i MRPawn :

  • Lägg till en markör i pessens pekfingrar.
  • Ange ledade handindatahändelser som kan manipuleras via pawn.
  • Tillåt händelser för långt interaktionsindata genom handstrålar som sträcker sig från handflatorna i de virtuella händerna.

Vi rekommenderar att du läser igenom dokumentationen om handinteraktioner innan du fortsätter.

När du är klar öppnar du MRPawn Blueprint och går till Event Graph.

  1. Dra och släpp körningsstiftet från Event BeginPlay för att placera en ny nod.

    • Välj Spawn Actor från Klass, klicka på listrutan bredvid pin-koden klass och sök efter Uxt Hand Interaction Actor.
  2. Skapa en andra Uxt Hand Interaction Actor, som den här gången ställer in hand till höger. När händelsen börjar skapas en Uxt Hand Interaction Actor på varje hand.

Händelsediagrammet ska matcha följande skärmbild:

Spawn UXT Hand Interaction Actors

Både Uxt Hand Interaction Actors behöver ägare och inledande transformeringsplatser. Den första transformeringen spelar ingen roll i det här fallet eftersom UX-verktygen får handinteraktionsaktörerna att hoppa till de virtuella händerna så snart de visas. Funktionen kräver dock SpawnActor transformeringsindata för att undvika ett kompilatorfel, så du använder standardvärdena.

  1. Dra och släpp stiftet från en av spawn-transformeringsstiften för att placera en ny nod.

    • Sök efter noden Gör transformera och dra sedan returvärdet till den andra handens Spawn-transformering så att båda SpawnActor-noderna är anslutna.
  2. Välj nedåtpilen längst ned på båda SpawnActor-noderna för att visa pin-koden Ägare .

    • Dra stiftet från en av ägarstiften och släpp för att placera en ny nod.
    • Sök efter själv och välj variabeln Hämta en referens till själv .
    • Skapa en länk mellan självobjektets referensnod och den andra handinteraktionsskådespelarens ägarstift .
  3. Slutligen markerar du rutan Visa nära markör på grab-mål för båda handinteraktionsaktörerna. En markör bör visas på greppet när pekfingret närmar sig, så att du kan se var fingret är i förhållande till målet.

    • Kompilera, spara och återgå till main-fönstret.

Kontrollera att anslutningarna matchar följande skärmbild, men dra gärna runt noder för att göra skissen mer läsbar.

Slutför konfigurationen av UXT Hand Interaction Actor

Mer information om Hand Interaction Actors finns i UX Tools-dokumentationen.

Nu har de virtuella händerna i projektet ett sätt att välja objekt, men de kan fortfarande inte ändra dem. Din sista uppgift innan du testar appen är att lägga till Manipulator-komponenter till aktörerna i scenen.

Koppla manipulatorer

En manipulator är en komponent som svarar på ledade handinmatningar och kan hämtas, roteras och översättas. Genom att tillämpa manipulatorns transformering på en actors-transformering möjliggörs direkt manipulering av skådespelare.

  1. Öppna brädritningen , klicka på Lägg till komponent och sök efter Uxt Generic Manipulator på panelen Komponenter .

Lägga till en allmän manipulator

  1. Expandera avsnittet Generic Manipulator (Allmän manipulator ) på panelen Information . Du kan ange enhands- eller tvåhandsmanipulering, rotationsläge och utjämning härifrån. Välj vilka lägen du vill och kompilera och spara tavla.

Ange läget

  1. Upprepa stegen ovan för WhiteKing Actor.

Mer information om manipulatorkomponenterna finns i plugin-programmet Mixed Reality UX Tools i dokumentationen.

Testa scenen

Goda nyheter alla! Du är redo att testa appen med sina nya virtuella händer och användarindata. Tryck på Spela upp i huvudfönstret så ser du två näthänder med strålar som sträcker sig från varje handflata. Du kan styra händerna och deras interaktioner på följande sätt:

  • Håll ned alt-tangenten till vänster för att styra den vänstra handen och den vänstra Skift-tangenten för att styra den högra handen.
  • Flytta musen för att flytta handen och rulla med mushjulet för att flytta handen framåt eller bakåt.
  • Använd den vänstra musknappen för att nypa och mittenmusknappen för att peta.

Anteckning

Indatasimulering kanske inte fungerar om du har flera headset anslutna till datorn. Om du har problem kan du prova att koppla från dina andra headset.

Simulerade händer i visningsporten

Prova att använda de simulerade händerna för att plocka upp, flytta och sätta ner den vita schackkungen och manipulera brädet! Experimentera med både nära och långt interaktion - observera att när dina händer kommer tillräckligt nära för att ta tag i brädan och kungen direkt, ersätter en fingermarkör på spetsen av pekfingret handstrålen.

Mer information om funktionen simulerade händer finns i plugin-programmet MRTK UX Tools i dokumentationen.

Nu när dina virtuella händer kan interagera med objekt är du redo att gå vidare till nästa självstudie och lägga till användargränssnitt och händelser.

Nästa avsnitt: 5. Lägga till en knapp & återställa plats för delar