Rörelsekontroller

Rörelsestyrenheter är maskinvarutillbehör som gör det möjligt för användare att vidta åtgärder i mixad verklighet. En fördel med rörelsestyrenheter jämfört med gester är att styrenheterna har en exakt position i rymden, vilket möjliggör detaljerad interaktion med digitala objekt. För Windows Mixed Reality uppslukande headset är rörelsestyrenheter det primära sättet för användare att vidta åtgärder i sin värld.

Bild: En Windows Mixed Reality rörelsestyrenhet

Windows Mixed Reality rörelsestyrenheter



Stöd för enheter

Funktion HoloLens (första generationen) HoloLens 2 Integrerande headset
Rörelsekontroller ✔️

Maskinvaruinformation

Windows Mixed Reality rörelsestyrenheter erbjuder exakt och dynamisk rörelsespårning i ditt synfält med hjälp av sensorerna i det uppslukande headsetet. Det finns inget behov av att installera maskinvara på väggarna i ditt utrymme. Dessa rörelsestyrenheter kommer att erbjuda samma enkel installation och portabilitet som Windows Mixed Reality uppslukande headset. Våra enhetspartner planerar att marknadsföra och sälja dessa styrenheter på detaljhandelshyllorna denna semester.

Lär känna din kontrollant
Lär känna din kontrollant

Funktioner:

  • Optisk spårning
  • Utlösare
  • Ta tag i knappen
  • Styrspak
  • Touchpad

Installation

Innan du börjar

Du behöver:

  • En uppsättning med två rörelsestyrenheter.
  • Fyra AA-batterier.
  • En dator med Stöd för Bluetooth 4.0.

Sök efter Windows-, Unity- och drivrutinsuppdateringar

Parkopplingskontrollanter

Rörelsestyrenheter kan kopplas ihop med värddatorn med Windows-inställningar som alla andra Bluetooth-enheter.

  1. Sätt i två AA-batterier i styrenhetens baksida. Låt batterilocket vara avstängt tills vidare.
  2. Om du använder en extern USB Bluetooth-adapter i stället för en inbyggd Bluetooth-radio läser du bästa praxis för Bluetooth innan du fortsätter. För skrivbordskonfiguration med inbyggd radio kontrollerar du att antennen är ansluten.
  3. Öppna Windows-inställningar –>Enheter –>Lägg till Bluetooth eller annan enhet –>Bluetooth och ta bort tidigare instanser av "Rörelsestyrenhet – Höger" och "Rörelsestyrenhet – Vänster". Kontrollera även Kategorin Andra enheter längst ned i listan.
  4. Välj Lägg till Bluetooth eller annan enhet och se hur den börjar identifiera Bluetooth-enheter.
  5. Tryck på och håll i styrenhetens Windows-knapp för att aktivera styrenheten, släpp när den surrar.
  6. Tryck och håll i parkopplingsknappen (tabb i batterifacket) tills lysdioderna börjar pulsa.
  1. Vänta "Rörelsestyrenhet - vänster" eller "Rörelsestyrenhet - höger" för att visas längst ned i listan. Välj för att parkoppla. Styrenheten vibrerar en gång när den är ansluten.

    Bild: Välj "Rörelsestyrenhet" att parkoppla; om det finns flera instanser väljer du en längst ned i listan

Välj Rörelsekontrollant att parkoppla, om flera instanser väljer en från att visas längst ned i listan

  1. Kontrollanten visas i Bluetooth-inställningarna under kategorin "Mus, tangentbord, & penna" som Ansluten. Nu kan du få en uppdatering av den inbyggda programvaran – se nästa avsnitt.
  2. Sätt tillbaka batterilocket.
  3. Upprepa steg 1–9 för den andra styrenheten.

När du har parkopplat båda kontrollanterna bör inställningarna se ut så här under kategorin "Mus, tangentbord, & penna"

Bild: Rörelsestyrenheter anslutna

Rörelsestyrenheter anslutna

Om kontrollanterna är avstängda efter parkopplingen visas deras status som Parkopplad. För kontrollanter permanent under kategorin "Andra enheter" kanske parkopplingen bara delvis har slutförts. I det här fallet kör du parkopplingsstegen igen för att få kontrollanten att fungera.

Uppdatera den inbyggda styrenhetens inbyggda programvara

  • Om ett uppslukande headset är anslutet till datorn med den nya inbyggda styrenhetens inbyggda programvara skickas den inbyggda programvaran automatiskt till rörelsestyrenheterna nästa gång du aktiverar dem. Uppdateringar av styrenhetens inbyggda programvara indikeras av ett mönster av belysning av LED-kvadranter i en cirkulär rörelse och tar 1–2 minuter.
  • När uppdateringen av den inbyggda programvaran har slutförts startas kontrollanterna om och återansluts. Båda styrenheterna bör vara anslutna nu.

    Bild: Styrenheter anslutna i Bluetooth-inställningar

Anslutna styrenheter

  • Kontrollera att kontrollanterna fungerar korrekt:
    1. Starta Mixed Reality-portalen och ange din Mixed Reality Home.
    2. Flytta kontrollanterna och verifiera spårning, testknappar och kontrollera att teleporteringen fungerar. Om de inte gör det kan du kolla in felsökning av rörelsestyrenhet.

Stirra och peka

Windows Mixed Reality stöder två viktiga modeller för interaktion; blick och genomförande och peka och genomföra:

  • Med blick och incheckning riktar användarna in sig på ett objekt med blicken och väljer sedan objekt med handlufttryckningar, en spelplatta, en klickare eller deras röst.
  • Med punkt och incheckning kan en användare rikta en riktad rörelsekontrollant mot målobjektet och sedan välja objekt med kontrollantens utlösare.

Appar som har stöd för att peka med rörelsestyrenheter bör också möjliggöra blickdrivna interaktioner där det är möjligt, så att användarna kan välja vilka indataenheter de använder.

Hantera rekyl vid pekare

När du använder rörelsekontrollanter för att peka och checka in använder användarna kontrollanten för att rikta in sig på och interagera genom att trycka på dess utlösare. Användare som trycker på utlösaren kraftigt kan sikta styrenheten högre i slutet av sin utlösare än de hade tänkt sig.

Om du vill hantera sådana rekyler som kan uppstå när användarna trycker på utlösaren kan appen fästa sin målstråle när utlösarens analoga axelvärde stiger över 0,0. Du kan sedan vidta åtgärder med hjälp av den riktade strålen några bildrutor senare när utlösarvärdet når 1.0, så länge den slutliga pressen sker inom en kort tidsperiod. När du använder den sammansatta tryckgesten på högre nivå hanterar Windows den här målbilden och tidsgränsen för ray capture åt dig.

Greppställning jämfört med pekposition

Windows Mixed Reality stöder rörelsestyrenheter i olika formfaktorer, där varje kontrollants design skiljer sig åt i relationen mellan användarens handposition och den naturliga "framåtriktade" riktning som appar bör använda för att peka när kontrollanten återges.

För att bättre representera dessa kontrollanter finns det två typer av poser som du kan undersöka för varje interaktionskälla. greppet ochpekarens pose.

Greppställning

Greppställningen representerar placeringen av antingen handflatan som identifierats av en HoloLens eller handflatan som håller i en rörelsekontrollant.

På uppslukande headset används greppställningen bäst för att återge användarens hand eller ett föremål som hålls i användarens hand, till exempel ett svärd eller en pistol. Greppställningen används också vid visualisering av en rörelsestyrenhet, eftersom den återgivningsbara modellen som tillhandahålls av Windows för en rörelsestyrenhet använder grepppositionen som sitt ursprung och rotationscentrum.

Greppet definieras specifikt enligt följande:

  • Greppläget: Handflatan centroid när du håller styrenheten naturligt, justeras vänster eller höger för att centrera positionen inom greppet. På Windows Mixed Reality rörelsestyrenhet justeras den här positionen vanligtvis med knappen Greppa.
  • Grepporienteringens högra axel: När du helt öppnar handen för att bilda en platt femfingerställning är strålen som är normal för handflatan (framåt från vänster handflata, bakåt från höger handflata)
  • Grepporienteringens framåtaxel: När du stänger handen delvis (som om du håller styrenheten), strålen som pekar "framåt" genom röret som bildas av dina icke-tumme fingrar.
  • Grepporienteringens Upp-axel: Uppåtaxeln som definieras av definitionerna Höger och Framåt.

Pekare

Pekaren representerar spetsen på kontrollanten som pekar framåt.

Den pekare som tillhandahålls av systemet används bäst för raycast när du återger själva kontrollantmodellen. Om du återger något annat virtuellt objekt i stället för kontrollanten, till exempel en virtuell pistol, bör du peka med en stråle som är mest naturlig för det virtuella objektet, till exempel en stråle som färdas längs pipan i den appdefinierade vapenmodellen. Eftersom användarna kan se det virtuella objektet och inte den fysiska kontrollanten blir det sannolikt mer naturligt att peka med det virtuella objektet för dem som använder din app.

Kontrollantspårningstillstånd

Precis som headseten kräver Windows Mixed Reality rörelsestyrenhet ingen installation av externa spårningssensorer. I stället spåras styrenheterna av sensorer i själva headsetet.

Om användaren flyttar styrenheterna från headsetets synfält fortsätter Windows i de flesta fall att härleda kontrollantpositioner och tillhandahålla dem till appen. När kontrollanten har förlorat visuell spårning tillräckligt länge sjunker kontrollantens positioner till positioner med ungefärlig noggrannhet.

I det här läget låser systemet kontrollanten till användaren, spårar användarens position när de rör sig, samtidigt som kontrollantens sanna orientering exponeras med hjälp av dess interna orienteringssensorer. Många appar som använder styrenheter för att peka på och aktivera gränssnittselement kan fungera normalt med en ungefärlig noggrannhet utan att användaren märker det.


Explicit resonemang om spårningstillstånd

Appar som vill hantera positioner på olika sätt baserat på spårningstillstånd kan gå längre och inspektera egenskaper för kontrollantens tillstånd, till exempel SourceLossRisk och PositionAccuracy:

Spårningstillstånd SourceLossRisk PositionAccuracy TryGetPosition
Hög noggrannhet < 1.0 Högt true
Hög noggrannhet (riskerar att förloras) == 1,0 Högt true
Ungefärlig noggrannhet == 1,0 Ungefärliga true
Ingen position == 1,0 Ungefärliga falskt

Dessa spårningstillstånd för rörelsekontrollanter definieras på följande sätt:

  • Hög noggrannhet: Även om rörelsestyrenheten är inom headsetets synfält, ger den vanligtvis positioner med hög noggrannhet, baserat på visuell spårning. En rörlig styrenhet som tillfälligt lämnar synfältet eller tillfälligt skyms från headsetsensorerna (till exempel av användarens andra hand) fortsätter att returnera hög exakthetsställningar under en kort tid, baserat på inertial spårning av själva styrenheten.
  • Hög noggrannhet (riskerar att förloras): När användaren flyttar rörelsestyrenheten förbi kanten på headsetets synfält kommer headsetet snart inte att kunna spåra styrenhetens position visuellt. Appen vet när kontrollanten har nått den här FOV-gränsen genom att se SourceLossRisk nå 1.0. Då kan appen välja att pausa kontrollantgester som kräver en stadig ström av högkvalitativa poser.
  • Ungefärlig noggrannhet: När kontrollanten har förlorat visuell spårning tillräckligt länge sjunker kontrollantens positioner till positioner med ungefärlig noggrannhet. I det här läget låser systemet kontrollanten till användaren, spårar användarens position när de rör sig, samtidigt som kontrollantens sanna orientering exponeras med hjälp av dess interna orienteringssensorer. Många appar som använder styrenheter för att peka på och aktivera gränssnittselement kan fungera som vanligt samtidigt som de är exakta utan att användaren märker det. Appar med tyngre indatakrav kan välja att känna av den här minskningen från Hög noggrannhet till Ungefärlig noggrannhet genom att inspektera egenskapen PositionAccuracy , till exempel för att ge användaren en mer generös hitbox på mål utanför skärmen under den här tiden.
  • Ingen position: Kontrollanten kan arbeta med ungefärlig noggrannhet under lång tid, men ibland vet systemet att inte ens en kroppslåst position är meningsfull för tillfället. Till exempel kanske en kontrollant som har aktiverats aldrig har observerats visuellt, eller så kan en användare placera en kontrollant som sedan hämtas av någon annan. Då ger inte systemet någon position till appen och TryGetPosition returnerar falskt.

Interaktioner: Rumslig inmatning på låg nivå

Kärninteraktionerna mellan händer och rörelsekontrollanter är Select, Menu, Grasp, Touchpad, Thumbstick och Home.

  • Välj är den primära interaktionen för att aktivera ett hologram, som består av en tryckning följt av en utgåva. För rörelsekontrollanter utför du en Select-tryckning med styrenhetens utlösare. Andra sätt att utföra en Select är genom att tala röstkommandot "Select". Samma utvalda interaktion kan användas i alla appar. Tänk på Välj som motsvarigheten till ett musklick. en universell åtgärd som du lär dig en gång och sedan tillämpar i alla dina appar.
  • Menyn är den sekundära interaktionen för att agera på ett objekt, som används för att hämta en snabbmeny eller utföra någon annan sekundär åtgärd. Med rörelsekontrollanter kan du utföra en menyåtgärd med hjälp av kontrollantens menyknapp . (det vill: knappen med hamburgarikonen "meny" på den)
  • Förstå hur användare direkt kan vidta åtgärder på objekt i handen för att manipulera dem. Med rörelsekontrollanter kan du göra en greppåtgärd genom att klämma näven hårt. En rörelsekontroll kan identifiera ett Grepp med en gripknapp, handflatan eller annan sensor.
  • Med pekplattan kan användaren justera en åtgärd i två dimensioner längs ytan på en rörelsestyrenhets pekplatta och utföra åtgärden genom att klicka nedåt på pekplattan. Pekplattor ger ett pressat tillstånd, rört tillstånd och normaliserade XY-koordinater. X och Y sträcker sig från -1 till 1 över intervallet för den cirkulära pekplattan, med ett centrum vid (0, 0). För X är -1 till vänster och 1 är till höger. För Y är -1 längst ned och 1 är högst upp.
  • Med tumstickan kan användaren justera en åtgärd i två dimensioner genom att flytta en rörelsekontrollants tumsticka inom dess cirkulära intervall och genomföra åtgärden genom att klicka nedåt på tumstickan. Tumstickor ger också ett pressat tillstånd och normaliserade XY-koordinater. X och Y sträcker sig från -1 till 1 över intervallet för den cirkulära pekplattan, med ett centrum vid (0, 0). För X är -1 till vänster och 1 är till höger. För Y är -1 längst ned och 1 är högst upp.
  • Start är en särskild systemåtgärd som används för att gå tillbaka till Start-menyn. Det liknar att trycka på Windows-tangenten på ett tangentbord eller Xbox-knappen på en Xbox-handkontroll. Du kan gå hem genom att trycka på Windows-knappen på en rörelsestyrenhet. Observera att du alltid kan återgå till Start genom att säga "Hej Cortana, Gå hem". Appar kan inte reagera specifikt på hemåtgärder eftersom de hanteras av systemet.

Sammansatta gester: Rumsliga indata på hög nivå

Både handgester och rörelsestyrenheter kan spåras över tid för att identifiera en gemensam uppsättning sammansatta gester på hög nivå. På så sätt kan din app identifiera tryck-, håll-, manipulerings - och navigeringsgester på hög nivå, oavsett om användare slutar använda händer eller kontrollanter.

Återgivning av rörelsestyrenhetsmodellen

3D-styrenhetsmodeller Windows gör en återgivningsbar modell tillgänglig för appar för varje rörelsekontrollant som för närvarande är aktiv i systemet. Genom att låta appen läsa in och formulera dessa systemspecifika kontrollantmodeller dynamiskt vid körning kan du se till att din app är framåtkompatibel med alla framtida kontrollantdesigner.

Vi rekommenderar att du återger alla återgivningsbara modeller i kontrollantens greppposition , eftersom modellens ursprung är justerat efter den här punkten i den fysiska världen. Om du återger kontrollantmodeller kanske du vill strålkasta in i scenen från pekarens pose, som representerar strålen längs vilken användarna naturligtvis förväntar sig att peka, med tanke på kontrollantens fysiska design.

Mer information om hur du läser in styrenhetsmodeller dynamiskt i Unity finns i avsnittet Rendering av modellen för rörelsekontrollant i Unity .

Linjekonst för 2D-styrenhet Vi rekommenderar att du kopplar kontrollanttips och kommandon i appen till själva styrenhetsmodellerna i appen, men vissa utvecklare kanske vill använda 2D-line art-representationer av rörelsekontrollanterna i platt "självstudie" eller "instruktions"-användargränssnitt. För dessa utvecklare har vi gjort .png bildfiler för rörelsekontrollanten tillgängliga i både svart och vitt nedan (högerklicka för att spara).

Förhandsgranskning av linjekonst för rörelsekontrollanter

Helupplösnings rörelsekontrollanter linjekonst i '''vit'''

Fullupplösnings rörelsekontrollanter linjekonst i '''svart'''

Vanliga frågor

Kan jag koppla rörelsekontrollanter till flera datorer?

Rörelsekontrollanter stöder parkoppling med en enda dator. Följ anvisningarna i konfigurationen av rörelsestyrenheten för att koppla ihop dina styrenheter.

Hur gör jag för att uppdatera den inbyggda programvaran för rörelsekontrollanten?

Rörelsestyrenhetens inbyggda programvara är en del av headsetdrivrutinen och kommer att uppdateras automatiskt vid anslutning, om det behövs. Uppdateringar av inbyggd programvara tar vanligtvis 1–2 minuter beroende på Bluetooth-radio och länkkvalitet. I sällsynta fall kan uppdateringar av styrenhetens inbyggda programvara ta upp till 10 minuter, vilket kan tyda på dålig Bluetooth-anslutning eller radiointerferens. Se Bluetooths metodtips i entusiastguiden för att felsöka anslutningsproblem. Efter en uppdatering av den inbyggda programvaran startar kontrollanterna om och återansluter till värddatorn (du kanske märker att lysdioderna lyser för spårning). Om en uppdatering av den inbyggda programvaran avbryts (till exempel om styrenheterna förlorar ström) görs ett nytt försök nästa gång styrenheterna slås på.

Hur kan jag kontrollera batterinivån?

I Windows Mixed Reality hem kan du vända på styrenheten för att se batterinivån på baksidan av den virtuella modellen. Det finns ingen indikator för fysisk batterinivå.

Kan du använda dessa styrenheter utan headset? Bara för joystick / utlösare / etc indata?

Inte för universella Windows-program.

Felsökning

Se felsökning av rörelsekontrollant i entusiastguiden.

Lämna in feedback/buggar för rörelsekontrollant

Ge oss feedback i feedbackhubben med hjälp av kategorin "Mixed Reality –> indata".

Se även