我正在尝试在 Unity 中为 GearVR 制作一个简单的游戏。在游戏中,我有一个场景,用户可以在其中浏览项目列表。如果用户在查看项目时单击,则可以选择项目。对于导航部分,用户应该能够同时使用头部移动和滑动来旋转项目(每次向右/向左滑动移动一/减一)。
现在的问题是:我可以使用下面的代码来完成所有这些工作(设置为项目父项的组件),但是我使用滑动的次数越多,旋转就会不断增加。我似乎无法弄清楚为什么......仍在努力。
感谢任何形式的帮助 XD
private void ManageSwipe(VRInput.SwipeDirection sw)
{
from = transform.rotation;
if (sw == VRInput.SwipeDirection.LEFT)
{
to = Quaternion.Euler(new Vector3(0, from.eulerAngles.y + 30, 0));
}
if (sw == VRInput.SwipeDirection.RIGHT)
{
to = Quaternion.Euler(new Vector3(0, from.eulerAngles.y - 30, 0));
}
StartCoroutine(Rotate());
}
IEnumerator Rotate(bool v)
{
while (true)
{
transform.rotation = Quaternion.Slerp(from, to, Time.deltaTime);
yield return null;
}
}
我正在使用 Unity 5.4.1f1 和 jdk 1.8.0。
PS。不要对我太苛刻,因为这是我在这里的第一个问题。
顺便说一句……大家好XD