对于 VR 摩托车游戏(统一制作),我需要一个由 SteamVR 控制器位置控制的转向。
我正在寻找两种可能性之一:
- 向前移动控制器 = 向左转向;向后移动控制器 = 向右转向。
或者
- 向右倾斜控制器 = 向右转向;向左倾斜控制器 = 向左转向;
现在,我有这个输入脚本:(私有控制器变量和注释的 steerinput 只是一个尝试。没有这样做)。
//private SteamVR_Controller.Device controller;
void Inputs()
{
Speed = rigid.velocity.magnitude * 3.6f;
//Freezing rotation by Z axis.
transform.eulerAngles = new Vector3(transform.eulerAngles.x, transform.eulerAngles.y, 0);
//If crashed...
if (!crashed)
{
if (!changingGear)
motorInput = Input.GetAxis("Vertical");
else
motorInput = Mathf.Clamp(Input.GetAxis("Vertical"), -1, 0);
steerInput = Input.GetAxis("Horizontal");
//steerInput = controller.transform.rot.x;
}
else
{
motorInput = 0;
steerInput = 0;
}
//Reverse bool
if (motorInput < 0 && transform.InverseTransformDirection(rigid.velocity).z < 0)
reversing = true;
else
reversing = false;
}