我正在为OculusGo创建一个统一的虚拟现实世界。我使用的是OVR CameraRig和Oculus实用程序。我有一个由以下脚本轮换的模型:
public class rotation_2 : MonoBehaviour
{
public bool _shouldRotate = true;
void Update()
{
if (_shouldRotate)
transform.Rotate(new Vector3(0, Time.deltaTime * 8, 0));
}
void OnMouseDown()
{
if (_shouldRotate)
_shouldRotate = false;
}
}现在,当鼠标按钮被按下时,模型会旋转并停止旋转。当鼠标按钮被释放时,它应该继续旋转--但它没有。为什么?
在下一步中,我想从鼠标切换到OculusGo控制器。所以导致“旋转-停止”的不是鼠标按钮,而是OculusGo控制器。
谢谢你,圣诞快乐!
发布于 2018-12-26 18:09:15
现在,当鼠标按钮被按下时,模型会旋转并停止旋转。当鼠标按钮被释放时,它应该继续旋转--但它没有。为什么?
您正在使用OnMouseDown事件。当按下鼠标按键时,该事件总是会触发,从而将_shouldRotate设置为false并停止移动。您需要使用OnMouseUp事件,该事件将在释放鼠标按钮时触发。
在下一步中,我想将鼠标改为OculusGo控制器。所以导致“旋转-停止”的不是鼠标按钮,而是OculusGo控制器。
对于下一步,您需要查找OculusGo文档,并查找在按下和释放按钮时触发的事件。您必须找到类似于OnMouseUp的内容,可能还需要检查发送给函数的参数,以确定触发事件的按钮。
希望这对你有帮助,也祝你圣诞快乐。
https://stackoverflow.com/questions/53896001
复制相似问题