SteamVR的新版输入系统

在 SteamVR Unity Plugin - v2.0.1中steam推出了新的输入系统,新的输入系统脱离了硬件的束缚,

玩家可以自定义按键,也可以分享或者直接使用别人的设置,非常的不错,

研究了一下,把一点成果放在下面分享。

--------Unity版本2018.1.0f2------------,

---------------SteamVR Unity Plugin版本2.0.1------------

导入后打开Window—SteamVR_Input:

SteamVR的新版输入系统_第1张图片

我们可以自定义自己的action Set,也可以在官方基础上修改

我就在default上新加了“pad”和“newaction”两个Action

自定义action Sets的话可以用

      [SteamVR_DefaultActionSet("platformer")]
        public SteamVR_ActionSet actionSet;



actionSet.ActivatePrimary();

新加Action也比较简单

点击 open binding UI 打开设置界面,

如果出现

SteamVR的新版输入系统_第2张图片

的提示或者手柄不能设置的情况,请坚持VR设置的连接。

在这里我们只自定义手柄,所以在current Controller中选择vive Controller

 

SteamVR的新版输入系统_第3张图片

点击edit进入编辑

 

SteamVR的新版输入系统_第4张图片

点击“+”号为菜单键设置绑定

SteamVR的新版输入系统_第5张图片

我是绑定了自定义的New Action 

点击“+”号为方向键设置绑定

SteamVR的新版输入系统_第6张图片

我为方向键绑定了自定义的”Pad“。

然后关闭页面,回到unity 点击 “Save and generare”,当出现SteamVR_Input文件夹时证明成功创建

然后我们就可以在游戏里使用了

 if (SteamVR_Input._default.inActions.NewAction.GetStateDown(SteamVR_Input_Sources.Any))
            {
                Debug.Log("menu");
                if (OnDown_Menu != null)
                    OnDown_Menu();
            }
Vector2 m = (SteamVR_Input._default.inActions.Pad.GetAxis(SteamVR_Input_Sources.Any));
                movement = new Vector3(m.x, 0, m.y);

想检测按键的话,也很方便

Window——SteamVR Input Live View 

绿色的就是被触发了的Action

SteamVR的新版输入系统_第7张图片

大概就是这样了

你可能感兴趣的:(VR,unity)