我在想如何使用Unity3D 5.3.4f中的Oculus遥控器。我发现了一些有关ovr映射的documentation,但我似乎无法理解。
我想实现的是点击中间的按钮(button.one)。
我现在用的是这行代码

if (OVRInput.GetUp(OVRInput.Button.One))
    {
        Debug.Log("remote click");
    }

但是当我运行应用程序时,我会得到这个错误。
nullreferenceexception:对象引用未设置为对象的实例
ovrinput.getup(button virtualmask,controller controllermask)(位于assets/ovr/scripts/ovrinput.cs:600)
menubuttonhandler.update()(位于assets/menubuttonhandler.cs:136)
在这个脚本中可以找到
/// <summary>
/// Gets the current up state of the given virtual button mask with the given controller mask.
/// Returns true if any masked button was released this frame on any masked controller and no other masked button is still down this frame.
/// </summary>
public static bool GetUp(Button virtualMask, Controller controllerMask = Controller.Active)
{
    return OVRManager.input.GetResolvedButtonUp(virtualMask, RawButton.None, controllerMask);
}

以前在Unity里有没有人用过Oculus遥控器,可以帮我吗?
谢谢您,
约翰

最佳答案

在调用getup()之前,该方法中的一个对象可能需要初始化。
仔细看一下你的init代码,以及你可能有的任何示例——我敢打赌,你不会看得太多就会发现遗漏了什么。我不熟悉统一API,但是如果它们像PC或移动C++ API一样,你可能错过了一步,或者忘记启动VR服务。

09-20 23:44