VRTK配置

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VRTK配置相关的知识,希望对你有一定的参考价值。

参考技术A 打开unity把VRTK的unity package和Steam VR的unity package导入到你的项目里面,然后新建一个空物体

然后把名字改成CamRig然后建立子物体把名字改成[VRTK_SDKManager](也可以不用这名字,开心就好)将其坐标归零,然后给其建立一个子物体,子物体也是一个空物体归零,名字叫SDKSetups,然后在给其建立一个子物体取名叫SteamVR给这个脚本添加一个叫VRTK_SDK SetUp的脚本(这个是VRTK自带的脚本),然后把SteamVR的[CameraRig]和[SteamVR]的Prefab拖到其子物体上。点击SteamVR的这个空物体,把脚本上的Auto Populate后面的对勾给取消然后把这个脚本拖GameObject到对应的地方,如图

然后再把刚才去掉的对勾打上,这这脚本的意思就是在你运行程序的时候会自动加载SteamVR的摄像机其实现的功能。然后在CamRig下建立另一个子物体名字叫[VRTK_Scripts]这里就是放置一些需要的脚本,先建立一个子物体叫PlayArea把VRTK——Body Physics和VRTK——Height Adjust Teleport脚本放到这个物体上,这两个脚本确认了你的相机能行走的范围和高度以及一些基本的参数,可以自己研究一下
然后在[VRTK_Scripts]建立两个空物体分别叫LeftController和RightController这里放置给左右手柄添加的事件,我这里添加的是左手柄为射线操作,右手柄为抛物线操作

pointerToggleButton:激光的显示开关,激光在VR里相当于鼠标箭头的指向功能。
pointerSetButton:激光停留的指向目标,触发目标的功能,相当于鼠标点击。
grabToggleButton:抓住物体动作,配合使用 VRTK 插件集成的抓取,投掷功能。
useToggleButton:触发目标事件,比如把手柄放在门把手上,按下这个按键,触发门打开的功能;手柄放在电灯开关上,按下按键,触发电灯开发的功能。这个和pointerSetButton区别在于后者需要激光落在目标上,才能触发目标上的功能。
uiClickButton:触发UI Canvas 目标的事件。
menuToggleButton:游戏目录显示开关。
axisFidelity:按键按下的强度,完全按下是1,松开时是0。现在只有Trigger按键(手部后面扳机)有此属性。
triggerClickThreShold:扳机要到多大程度,才能使用扳机的触发功能。如果是0.5,则表示只要按下一半的程度就可以触发,如果是1,则必须完全按下才能触发。
以上是设置各个按键在插件中交互的功能。
如果要获得每个按键具体的使用情况,如按下、松开按键、手触摸板的按键位置、扳机的按下强度等,则需要在 VRTK_ControllerEvent 注册对应按键的事件。
在VRTK_ControllerEvents_ListenerExample脚本中,监听了VRTK_ControllerEvent所有按键的事件,和按键的参数信息。如下图的扳机键的按键事件。 (以上别名按钮已经过时,分别被其它组件中的But取代,在“VRTK_Controller Events”脚本中有注释说明)

事件的参数在VRTK_ControllerEvents中是:

第二个要添加的是VRTK_Interact Touch
主要的作用就是和物体发生碰撞的交互
第三个要添加的是VRTK_UI Pointer
主要作用是使其能与UI发生交互
第四个要添加的是VRTK_Controller UI Pointer Events_Listener Example
第五个要添加的是VRTK_Pointer
其Enable Teleport这个选项选择是可以用此位移,不选中就是射线打中的地方摄像机不会位移到这个地方
在Pointer Renderer这里面把父物体LeftController加入进去
第六个要添加的是VRTK_Straight Pointer Renderer
这个主要就是射线的操作,Layers To Ignore中选择一些被无视的对象,即射线射到这些物体上不会有反应,这些物体通过加Layer层标签来决定。

VR学习VRTK的配置

使用VRTK+SteamVRPlugin作VR游戏,SteamVR Plugin 只支持HTC Vive

1.在AssetStore中下载VRTK以及SteamVR Plugin

 

2.导入到项目中

3.创建新的空物体命名为VRTK_Manager并添加VRTK_SDK Manager脚本

4.创建两个子物体命名为RightController、LeftController,并将新建的两个空物体赋给脚本

5.创建新的空物体命名为VRTK_Setup并添加VRTK_SDK Setup脚本,并设置脚本Quick Select为SteamVR(不同的VR设备有自己的开发脚本,SteamVR支持HTC Vive)

 6.添加子类预制体CamerRig到VRTK_Setup中

7.在VRTK_Manager中设置脚本里的Setups,点击Auto Populate自动获取,或者从直接将VRTK_Setup拖过来

8.新建Plane表示地面

 

到此为止VRTK基本的配置就结束了,配置好HTC设备后带上HTC Vive头盔,运行程序就能在三维空间里观察周围(虽然什么也没有)。。。。

 

以上是关于VRTK配置的主要内容,如果未能解决你的问题,请参考以下文章

Unity5.6之前版本VRTK插件基础交互

让手柄上同时具备VRTK_StraightPointerRenderer和VRTK_BezierPointerRenderer

最快的方式入手VRTK4.0——VRTK4.0学习笔记

VRTK3.3.0-004传送

VRTK使用说明

htc vive 前置摄像头怎么打开