Virtual Reality-spel och gör din kropp en Controller! (Unity + Visual Studio + Kinect + Oculus) (10 / 11 steg)
Steg 10: Kinecting Input spelenheten
Se vad jag gjorde där. Kinecting... som ansluter... Skämt! Hur som helst, var på sista sträckan för att få allt tillsammans!
Växla tillbaka till din huvudsakliga scen. Lägg till prefabricerade i hierarkin.
BILD 1
Nu har vi att göra ett par saker innan våra händer kan styra rotation och vändning av världen. Först har vi länka HandManager till Rotator-objektet. Sedan måste vi se till att vi inte oavsiktligt rotera i början av spelet.
HandManager lägger du till följande variabler:
offentliga GameObject Rotator;
privat PlatformRotate platformRotate;
Vi offentliggöra Rotator-objektet så att vi kan ställa in den i enhet senare. Sedan i början anger metod platformRotate till rotatorer PlatformRotate;
void Start()
{
platformRotate = Rotator.GetComponent();
}
Nu när våra platformRotate är kopplad till rotatorer PlatfromRotate kan vi använda den för att ringa vissa metoder som TurnRight() och TurnLeft(). Så låt oss genomföra det. Kom ihåg i vår uppdateringsmetod där vi kallar den totala delstaten händerna gör? Jo det är där vi kommer att ändra koden.
om (kropp. IsTracked)
{
Kontrollera sidan om kroppen spåras
State = CheckLeftHandState (organ. HandLeftState) + (2 * CheckRightHandState (organ. HandRightState));
Switch (state)
{
fall 0:
bryta;
fall 1:
Vänster
Debug.Log("Left");
om (prevState == 0)
platformRotate.TurnLeft();
bryta;
fall 2:
Höger
Debug.Log("Right");
om (prevState == 0)
platformRotate.TurnRight();
bryta;
fall 3:
Både
Debug.Log("Both");
om (prevState == 0)
{
platformRotate.Flip();
}
bryta;
standard:
bryta;
}
prevState = staten.
}
}
Okej så nu är vi så nära mållinjen!
Nu måste vi se till att vi inte kalla Flip eller rotera för tidigt, som på instruktionssidan.