VRTK: 使用触摸板移动
为了实现特殊的需求以及一些特殊的操作,出了提供传送的移动方式外,我们还考虑给项目添加触摸板移动功能。这种功能类似于普通游戏中的使用方向键移动。在VR环境中,用户通过在手柄的触摸板上滑动手指来实现移动。
示例场景
017_CameraRig_TouchpadWalking
这个场景中有一些墙壁和障碍物,用户可以用触摸板来移动。还有个区域只有用户蹲下才能穿过。在俯身区域挺起身体将导致用户闪回他们最近的正常位置,这是通过Headset Collision机制来实现的,有关Headset Collision的说明将在别的篇章中见到。
实现方法
首先在PlayArea上加入以下脚本:
然后在Controller上加入以下几个脚本: VRTK_TouchpadControl脚本是主要控制触摸板移动的脚本,其中:
- Device For Direction选项指定了移动时的相对方向。
- Disable Other Controls On Active选项指定是否在触摸板移动时禁用其他控制脚本如传送等。
- Affect On Falling选项指定了移动是否在物体下落有效。
- Control Override Object指定了触摸板控制移动的物体,默认是PlayArea物体。
接着添加以下两个脚本:
这两个脚本控制了移动操作的一些参数。
现在触摸板移动已经处于可用状态。