Oculus学习笔记之控制器输入初步(一)

Oculus的手柄的输入控制我们可以从OVRInput这个静态类中进行分析,OVRInput中有多个按钮的枚举类型,我们通过枚举值可以快速的找到对应的输入控制。
OVRInput中主要有以下几类:
1. Controller 控制器枚举,支持的输入设备:
• LTouch:Oculus的左Touch控制器,是虚拟的以便和Touch区分
• RTouch:Oculus的右Touch控制器
• Touch: Oculus的控制器,包括左右Touch控制器
• Remote: Oculus的Remote控制器(小的遥控器)
• Gamepad: 包括Xbox 360、Xbox one,或者一般的安卓手柄
• Touchpad: GearVR的TouchPad(安卓)
• Active:
• All
2. Button 各个按钮的输入,对应Oculus的Touch按钮主要有:
• One:对应A键
• Two:对应B键
• Three:对应C键
• Four:对应D键
• Start:对应左手手柄的开始键
• Back:没有对应
• PrimaryShoulder:没有对应
• PrimaryIndexTrigger:对应左手手柄的食指按键
• PrimaryHandTrigger :对应左手手柄的中指、无名指按键
• PrimaryThumbstick:对应左手手柄摇杆的按钮(摇杆可以按下)
• PrimaryThumbstickUp:对应左手手柄摇杆往上推
• PrimaryThumbstickDown:对应左手手柄摇杆往下推
• PrimaryThumbstickLeft:对应左手手柄摇杆往左推
• PrimaryThumbstickRight:对应左手手柄摇杆往右推
• SecondaryShoulder:右手手柄,同左手
……
3. RawButton 我理解的是原生按钮,但是不太明白和Button有什么区别,因为按钮大体上都一样,注释写的是能够被用来直接查询控制器的状态
4. Touch 主要是Touch的各种触摸输入,注意触摸输入是包含于按下操作,也就是说,当按钮按下时,触摸事件依然在被触发,对应关系基本同Button:
• One:
• Two
• Three
• Four
• PrimaryIndexTrigger
• PrimaryThumbstick
• PrimaryThumbRest:这个是手柄上的颜色较浅的圆圈,为拇指休息区域,当手指放在上面时就会触发这个事件
• Secondary……
5. RawTouch
6. NearTouch 主要是当手指接近按钮(没有接触),包含于触摸和按下,这个功能一个手柄上只有两个按钮:
• PrimaryIndexTrigger
• PrimaryThumbButtons : 这个虽然只有一个,但是接近摇杆、Rest区域、X、Y键时都会被触发
• SecondaryIndexTrigger
• SecondaryThumbButtons
7. RawNearTouch
8. Axis1D
9. RawAxis1D
10. Axis2D
11. RawAxis2D

另外OVRInput是一个静态类,所以对于按钮的监听使用上也非常方便

if (OVRInput.Get(OVRInput.Button.PrimaryHandTrigger))
{
     Debug.Log("PrimaryHandTrigger");
}
if (OVRInput.Get(OVRInput.Button.PrimaryIndexTrigger))
{
     Debug.Log("PrimaryIndexTrigger");
}

这些是自己初步学习到的,依然还有好些没有搞明白,后面再继续学习,也期待有大神路过指导一下。

  • 3
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: 在Unity中使用Oculus进行交互,你需要首先安装Oculus Integration插件。接下来,你可以使用Oculus提供的手柄或触摸控制器来实现交互。具体步骤如下: 1. 添加Oculus Integration插件:在Unity Asset Store中搜索“Oculus Integration”,下载并导入该插件。 2. 配置场景:将OVRPlayerController预制件拖拽到场景中,该预制件包含了Oculus手柄或触摸控制器的交互脚本。 3. 添加交互脚本:在需要进行交互的物体上添加OVRGrabbable脚本或OVRInput脚本,来实现物体的抓取或触发事件。 4. 设置交互动作:通过OVRInput脚本设置手柄或触摸控制器的按键和手势来触发相应的交互动作。 5. 调试和优化:在测试时,可以使用Oculus提供的Oculus Debug Tool来调整控制器的灵敏度和其他设置,来优化交互体验。 希望这些步骤能够帮助你实现在Unity中使用Oculus进行交互。 ### 回答2: UnityOculus交互是指使用Unity引擎开发虚拟现实(VR)应用程序,并与Oculus头戴式显示器(HMD)进行交互。Unity是一款业界广泛使用的游戏引擎,它提供了强大的功能和易于使用的界面,可用于开发各种类型的应用程序。 首先,要实现UnityOculus的交互,我们需要安装Oculus Integration插件,该插件为Unity提供了与Oculus设备通信的API和工具。 其次,我们可以使用Unity的编程语言(如C#)编写代码,利用Oculus Integration中提供的功能来处理Oculus设备的输入和输出。例如,我们可以使用Oculus Integration的API来获取头部或手部的位置和旋转信息,以及触摸控制器输入。通过这些信息,我们可以实现虚拟现实环境中的交互操作,如触摸、抓取和移动物体等。 此外,Unity还提供了一些内置的VR交互组件,如VR交互手柄VR交互器,可以方便地进行VR交互的开发。这些组件可用于创建可视化的用户界面元素,例如按钮和菜单,使用户能够通过触摸控制器进行操作。 最后,在开发过程中,我们可以通过在Unity编辑器中进行预览来测试和调试交互效果,以及优化用户体验。通过Unity的开发工具和Oculus Integration插件的支持,我们可以快速实现UnityOculus交互,并创建出富有交互性和沉浸感的虚拟现实应用程序。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值