Skip to content

HTC Vive Teleportation System v2.0.0

Compare
Choose a tag to compare
@Flafla2 Flafla2 released this 29 May 05:20
· 36 commits to master since this release

Requires the SteamVR Plugin for Unity. Install SteamVR BEFORE installing this unitypackage.

See the Getting Started section of the README for initial setup tips.

Added

  • Parabolic Pointer: Added support for multiple ground levels.
  • Added the ability to selectively mask a ViveNavMesh using Unity's Navigation Areas. This allows users to remove areas from the teleportable space and to optimize the preview rendering step by cutting out unused space.
  • The Parabolic Pointer now cuts off when the player points at objects that are not on the Navigation Mesh (however it still does not register as a teleportable point). Previously the pointer would simply cut through these objects.

Changed

  • Parabolic Pointer now uses Physics.Raycast to detect world collisions. This means that you must now add physics colliders to all teleportable surfaces.
  • Highly optimized ViveNavMesh raycasting algorithm. ViveNavMesh now samples Unity's NavMesh directly after raycasting using Unity's Physics.Raycast (see above).
    • This change represents a shift in the direction of the project. In the beginning, I wanted to decouple my system from Unity's Navmesh completely. However Navmesh-only approximations proved to be complicated, costly, and/or innacurate. See #9 and #10 for discussion on this matter.
  • Added sanity checks and rewrote some of ViveNavMesh Editor to improve stability (especially concerning prefabs)
  • Changed serialization of ViveNavMesh border data to a more elegant and stable method. If you are upgrading to v2.0.0, you must update your ViveNavMesh due to these changes.

Fixed

  • Fixed bug where Navmesh visualizer would hover 5cm above the ground (changed to 0.5cm to avoid z-fighting)
  • Fixed #11: Crash in Unity beta 5.4.0b18 and earlier when Ground Material is null in ViveNavMesh

Removed

  • Removed recommended Navmesh bake settings in setup (no longer necessary due to Navigation Area support)
  • Removed "Ground Level" option in Parabolic Pointer (no longer necessary due to multi floor level support)