开发环境:
- Windows 10 专业版;
- Unity 2020.3.23f1c1 (64-bit);
- SteamVR Plugin (v2.7.3);
步骤:(默认已安装好开发环境,在空场景中添加控制)
- 生成Action绑定:
- 打开SteamVR Input窗口:Window => SteamVR Input
- 本案例使用默认设置,直接点击 save and generate
- 若要丰富其他设置可以上网找;
- 文件路径:Assets/StreamingAssets/SteamVR/actions.json
- 创建空节点:
- 挂载组件 SteamVR_Behaviour,目的是加载上一步生成的配置(在这一步卡了好久,蛋疼,在任何一个文档里都没有查到这一步,如果有知道的大神,欢迎补充,感激不尽);
- 挂载组件 SteamVR_ActivateActionSetOnLoad,目的是指定默认加载哪个配置,默认就使用default即可;
- 挂载组件 SteamVR_Render ,不挂也行,默认会由第一步检测并生成;
- 值都是默认的就可以;
- 添加监听逻辑:
- 随便找个组件,新建也可,添加代码:
// 声明 public SteamVR_Input_Sources sourceType; public SteamVR_Action_Boolean action;// 根据实际设置的对应值使用 // 调用 var val = action.GetState(sourceType);// 拿到需要的值
- 完
- 随便找个组件,新建也可,添加代码:
- 其他的应该在网上都能查到了,这里就不啰嗦了。
参考文档:
- unity工程里的SteamVR目录下会自带2个文档,但是好简略;
- Steam VR官方1:SteamVR Unity Plugin | SteamVR Unity Plugin https://valvesoftware.github.io/steamvr_unity_plugin/index.html
- SteamVR官方2:Overview | SteamVR Unity Plugin https://valvesoftware.github.io/steamvr_unity_plugin/tutorials/SteamVR-Input.html
- 其他大神1:SteamVR Unity Plugin总结_小M的博客-CSDN博客官方文档建议优先阅读官方文档,虽然是英文但是内容很全,而且也是最新版本的。之前网上搜出来的很多代码都是2.0版本的,现在2.5版本有些代码写法改变了,需要注意一下。SteamVR Unity Plugin官方文档概述SteamVR Unity Plugin我认为可以分为三个部分外加一个demoRender Models把SteamVR_Behaviour_Pose脚本挂在一个game...https://blog.csdn.net/LittlelittleSir/article/details/105636712
- 其他大神2:SteamVR Unity Plugin - v2.2.0教程 / 简单输入系统_高大猛-CSDN博客概述SteamVR2.0将用户自定义的动作Action与手柄按键绑定,配置完毕后,其他设备也可以正常使用。能够使开发者在编程中专注于用户的动作,而非具体的设备的按键。InputSystem,即输入系统,开发人员通过自定义配置将默认动作与手柄按键进行绑定,而不是将直接操作具体设备的按键,因为很多每个平台的设备是不同的,这样可以快速适配应用程序,不需要修改代码。比如:当开发者检测玩家是否抓取某...https://blog.csdn.net/gsm958708323/article/details/89853185
一直没有找到关于SteamVR_Behaviour的说明,最后自己运行官方例子工程,一点一点打断点找到的这个组件脚本,再次表示蛋疼。