VR开发--SteamVR框架工具(1):VRTK

2020-06-02 18:12:42 浏览数 (1)

1、工具集成方法:

1、GitHub远程仓库:

git clone https://github.com/thestonefox/SteamVR_Unity_Toolkit

2、从Unity Store商店导入:

框架工具:

因为SteamVR plugin含有令人困惑或不完善的代码,所以框架作者决定创建一个脚本/资源集合,我们用Unity3d创建VR很方便。

2、集成SteamVR插件:

由于框架工具是集成SteamVR,所以我们导入HTC Vive api

3、控件基础

1、【CameraRig】:就是头盔视角模型,拖入场景即可触发头盔显示

它内部包含了控制器上模型的子物体(头盔与左右手柄控制器)

2、【FramesPerSecondCanvas】`

这个画布添加一个表示帧率的文本元素到头盔上。使用这个预制必须把它放到场景中,然后头盔的相机需要被添加到画布上。

选择场景中的FremesPerSecondCanvas对象

2.1找到Canvas组件

2.2设置Render Camera参数为 CameraRig预制里的Camera(eye)

预制上有很多可以被设置的参数。展开层级视图中的FramesPerSecondCanvas对象,显示子对象 FramesPerSecondText并点击显示额外参数,这些参数可以通过FramesPerSecondViewer脚本来设置。

所在脚本控件:详细参阅018场景
4.脚本Scripts
代码语言:javascript复制
  包含所有添加到Unity的VR功能工具脚本
4.1: ****VRTK_ControllerActions - 控制器行为 :****

处理常见控制器行为的帮助方法

动给定时长的能力

代码语言:javascript复制
//如果控制器模型是可见的返回真,否则返回假。
IsControllerVisible(): 

//根据所给布尔值状态设置控制器模型的可见性。如果传入true,控制器模型就被显示出来,如果传入false,控制器就被隐藏了。
ToggleControllerModel(bool on):

// 启动控制器开始震动,根据给定的持续计时(第一个参数)和震动强度(第二个strength参数)。最大强度可以是3999,超过就限制为3999。
TriggerHapticPulse(int duration, ushort strength):
016脚本展示隐藏控制器和让控制器在给定强度下震
4.2: ****VRTK_ControllerEvents:****控制器事件

控制器事件脚本被添加到 CameraRig预制里的控制器对象上,为控制器上的每个按钮按下提供事件监听(除了系统菜单按钮,因为这个按钮不能被重载,只能由Steam使用)。

内部事件发出属性

脚本所在位置:

SteamVR_Unity_Toolkit/Examples/Resources/Scripts /VRTK_ControllerEvents_ListenerExample.cs脚本

脚本02场景看VRTK_ControllerEvents例子

参考文档:

1、http://www.jianshu.com/p/8f731eac95db

2、http://www.manew.com/thread-91035-1-1.html

3、http://www.cnblogs.com/czaoth/p/5610573.html

0 人点赞