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

1、工具集成方法:

1、GitHub远程仓库:
git clone https://github.com/thestonefox/SteamVR_Unity_Toolkit
2、从Unity Store商店导入:

VR开发--SteamVR框架工具(1):VRTK_第1张图片
1.png

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

2、集成SteamVR插件:

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

VR开发--SteamVR框架工具(1):VRTK_第2张图片
2.png

3、控件基础

1、【CameraRig】:就是头盔视角模型,拖入场景即可触发头盔显示
它内部包含了控制器上模型的子物体(头盔与左右手柄控制器)

VR开发--SteamVR框架工具(1):VRTK_第3张图片
3.png

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

选择场景中的FremesPerSecondCanvas对象
2.1找到Canvas组件
2.2设置Render Camera参数为 [CameraRig]预制里的Camera(eye)

VR开发--SteamVR框架工具(1):VRTK_第4张图片
4.png

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

所在脚本控件:详细参阅018场景
VR开发--SteamVR框架工具(1):VRTK_第5张图片
5.png

4.脚本Scripts

  包含所有添加到Unity的VR功能工具脚本
4.1: ****VRTK_ControllerActions - 控制器行为 :****

处理常见控制器行为的帮助方法
动给定时长的能力

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

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

// 启动控制器开始震动,根据给定的持续计时(第一个参数)和震动强度(第二个strength参数)。最大强度可以是3999,超过就限制为3999。
TriggerHapticPulse(int duration, ushort strength):
VR开发--SteamVR框架工具(1):VRTK_第6张图片
6.png
016脚本展示隐藏控制器和让控制器在给定强度下震
4.2: ****VRTK_ControllerEvents:****控制器事件

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

VR开发--SteamVR框架工具(1):VRTK_第7张图片
7.png

内部事件发出属性


VR开发--SteamVR框架工具(1):VRTK_第8张图片
9.png

脚本所在位置:
SteamVR_Unity_Toolkit/Examples/Resources/Scripts /VRTK_ControllerEvents_ListenerExample.cs脚本

VR开发--SteamVR框架工具(1):VRTK_第9张图片
8.png
脚本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

一个人的路需要更多人的陪伴:欢迎加群: 134688909 一起交流,分享心得,获取项目资源。

你可能感兴趣的:(VR开发--SteamVR框架工具(1):VRTK)