新版SteamVR插件基础操作手册

本文深入探讨了SteamVR2.0的InputSystem,介绍了六种动作类型及其在Unity中的实现,包括Boolean、Single、Vector2、Vector3、Pose和Skeleton。详细解释了如何在不修改代码的情况下,通过动作管理适配多种VR控制器,以及如何更改按键设置和测试代码。
摘要由CSDN通过智能技术生成


一、概述

目前随着市场上的VR设备越来越多,控制器的类型越来越趋向于碎片化。老版的SteamVR插件显然不再适用,因为每当有新的控制器发布就,开发者就需要修改交互代码来适配新的设备,毕竟从开发角度来说,不同的控制器具有独立的键值映射。所以,V社推出了SteamVR2.0,能够让开发者在开发过程中只需要针对于用户的动作而不是控制器的按键。SteamVR2.0的重要更新是加入了Input System,更加符合OpenXR的标准。
Input System和之前处理用户的明显区别为:使用SteamVR Input System,开发者可以在应用程序外定义默认的动作并和按键进行绑定,而不需要设置某一设备的特定按键。这样可以让新的设备快速适应应用程序,无需更改代码。

二、动作管理(Actions)

Input System的核心概念是动作(Actions),steamVR2.0将动作抽象为以下6种类型:

  • Boolean类型:此类型的动作只有两种状态:True或False,比如点击UI的动作(InteractUI),只有点击和没点击两种状态。在unity中对应类为:SteamVR_Action_Boolean。
  • Single类型:此类型的动作返回0-1之间的数值,比如Trigger键按下到松开的过程。在Unity中对应类为SteamVR_Action_Single。
  • Vector2类型:此类型的动作返回Vector2数值,比如TouchPad圆盘键。这样的运动可以控制物体四个方向的运动。在Unity中对应类为SteamVR_Action_Vector2。
  • Vector3类型:此类型的动作返回Vector3数值。在Unity中对应类为SteamVR_Action_Vector3。
  • Pose类型:此类型的动作能够表示三维空间中的位置和旋转值,一般追踪VR控制器。在Unity中对应类为SteamVR_Action_Pose。
  • Skeleton类型:此类型的动作能获取用户握住手柄时的手指关节数组,可以根据返回数据结合手部模型更真实地呈现手在虚拟空间中的姿态。在Unity中对应类为SteamVR_Action_Skeleton。

新版SteamVR的事件在Window->SteamVR Input中管理。窗口如下图:

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值