【HTCVR】VRTK插件模块功能分析之传送移动(一)
来源:互联网 发布:淘宝店铺引流量方法 编辑:程序博客网 时间:2024/05/18 05:46
在HTC Vive设备上,我们戴着头戴显示器可以在一定的范围内自由走动,在现实中的移动会反映到虚拟世界中,我们称这个范围为“房间”。但是,在我们的游览项目中,虚拟场景里可移动的范围要远远大于房间的大小。那么如何实现在有限的现实空间中游览无限的虚拟空间呢。在很多类似的VR游戏、应用中采用的一个常用方法是传送。在本次我们的项目中,我们也将采用相同的方法。
在Unity中VRTK已经帮助我们封装好了一些常用的传送方法,这里我们来一一查看一下:
基础传送
示例场景
004_CameraRig_BasicTeleport
这个场景展示了基础的传送功能:按下手柄的触摸板按钮将发射一条射线,松开触摸板将立即传送到射线指向的目标位置,但是y坐标值并不改变,也就是水平平面上的传送。
实现方法
首先在场景中创建一个空物体,在上面绑上VRTK_SDK Manager脚本。
如图进行设置。
其中,Script Alias Left/Right Controller
项中所设置的物体分别是作为该空物体的子物体的两个物体。我们将在这两个子物体上绑定控制脚本,将自动映射到对应的左右手柄上,这样更便于管理并且不会破坏[CameraTig]
物体的Prefab链接。
在该物体下再新建一个空物体,命名为PlayArea
,并在上面绑上VRTK_Basic Teleport
脚本。
在LeftController
和RightController
上绑上如下三个脚本
这样设置之后,我们就拥有了基础传送的功能,可以在运行中尝试。
高度调整传送
示例场景
007_CameraRig_HeightAdjustTeleport
这个场景展示了另一种传送功能:按下手柄的触摸板按钮将发射一条射线,松开触摸板将立即传送到射线指向的目标位置,y坐标值贴合目标位置的y坐标值。
实现方法
在PlayArea
上绑定以下三个脚本
其中,如果有物体的Tag被设置为在VRTK_Policy List
中设置的Tag之一的话,那么将无法传送到该物体上。
- 【HTCVR】VRTK插件模块功能分析之传送移动(一)
- 【HTCVR】VRTK插件模块功能分析之传送移动(二)
- 【HTCVR】VRTK插件功能
- 【HTCVR】VRTK插件案例分析之001~010
- 【HTCVR】VRTK插件案例分析之0011~020
- 【HTCVR】VRTK插件案例分析之0021~030
- 【HTCVR】VRTK插件案例分析之0031~037
- 【HTCVR】VRTK插件案例分析之0038~044
- VRTK插件详解一:激光和移动
- VR开发之VRTK插件使用(一)
- 使用VRTK在场景中实现传送 (一)
- 【HTCVR】VRTK基本功能脚本说明
- SteamVR Unity工具包(VRTK)之激光和移动
- VRTK插件之与UGUI的交互
- 使用VRTK在场景中实现传送 (二)
- 使用VRTK在场景中实现传送 (三)
- 使用VRTK在场景中实现传送 (四)
- Unity Steam_VR VRTK开发插件自带案例详解(一)
- MySQL索引与慢查询
- PAT 乙级 1006
- xargs
- Mongo In Action--查询与聚合
- 在x86架构机器上交叉编译linux内核方法
- 【HTCVR】VRTK插件模块功能分析之传送移动(一)
- information_schema介绍
- 【jzoj5305】【NOIP2017提高A组模拟8.18】【C】
- css的优先级
- C#选择排序
- Error: Cannot find module 'webpack/lib/node/NodeTemplatePlugin' at Function.Module._resolveFilen
- 虚拟机上运行ROS 问题及其解决方案
- CF 461B Appleman and Tree (树形dp)
- 迪克斯托最短路径算法