关于用openvr开发Oculus时,Oculus手柄的Trigger键太灵敏的问题

使用openvr开发Oculus手柄,在操作Oculus手柄时发现trigger键十分灵敏,任何物体只要接触到trigger键都会触发trigger键绑定的事件响应

解决办法:

在openvr中有个结构体

struct VRControllerState001_t
{
// If packet num matches that on your prior call, then the controller state hasn't been changed since 
// your last call and there is no need to process it
uint32_t unPacketNum;


// bit flags for each of the buttons. Use ButtonMaskFromId to turn an ID into a mask
uint64_t ulButtonPressed;
uint64_t ulButtonTouched;


// Axis data for the controller's analog inputs
VRControllerAxis_t rAxis[ k_unControllerStateAxisCount ];
};




typedef VRControllerState001_t VRControllerState_t;


其中名为VRControllerAxis_t rAxis[ k_unControllerStateAxisCount ]的数组,用于Oculus手柄后发现该数组的第二个元素的x值rAxis[1].x在手柄的trigger键被施加不同压力时也会跟着变化,随着压力的增大而增大,减小而减小,范围从0到1。因此,可以通过对该值增加一个判断来控制trigger键的响应,具体设置多少因人而异;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值