使用VRTK在场景中实现传送 (三)

使用VRTK在场景中实现传送 (三)

这一篇中我们接着说明剩下的三个VRTK中与传送有关的功能。

NavMesh传送

示例场景

033_CameraRig_TeleportingInNavMesh
使用VRTK在场景中实现传送 (三)

这个场景看起来与之前提到的Terrain传送十分相似。事实上,这个场景用到的脚本和设置与之前提到的并没有太大区别,仅仅只是展示了在使用了NavMesh的系统中传送也能很好地工作。

使用VRTK在场景中实现传送 (三)

实现方法

有一个地方需要注意的是,在VRTK_HeightAdjustTeleport脚本中:
使用VRTK在场景中实现传送 (三)
Nav Mesh Limit Distance属性的值设置为0.1。
该属性的说明如下:

The max distance the teleport destination can be outside the nav mesh to be considered valid. If a value of 0 is given then the nav mesh restrictions will be ignored.

设置了传送目的地距离NavMesh边界外的最大距离。如果设置为0则可以无视NavMesh的限制进行传送。

冲刺传送

示例场景

038_CameraRig_DashTeleport
使用VRTK在场景中实现传送 (三)

这种传送方式与之前不同的是,采用的不是瞬间移动的方式,而是有一个短暂的冲刺过程。

实现方法

采用高度调整传送中的设置,只需要对PlayArea进行一处改动即可:把原来的VRTK_HeightAdjustTeleport脚本替换为VRTK_DashTeleport脚本。
使用VRTK在场景中实现传送 (三)