Git Product home page Git Product logo

vrtunnellingpro-unity's Introduction

VR Tunnelling Pro (VRTP) is the most advanced VR comfort solution for Unity 5.6+. It can be dropped in to almost any project for plug-and-play comfort options. It's developed by Sigtrap with support from Oculus, and supports all major VR platforms including

  • Oculus Rift, Go and Quest
  • HTC Vive
  • Playstation VR
  • Samsung GearVR
  • Google Daydream

VRTP is designed not only as a plugin, but a platform for experimenting with and developing new comfort techniques. Familiarity with the source will allow developers to quickly implement new techniques.

Full documentation for the current release is available at http://www.sigtrapgames.com/VrTunnellingPro/html. Check out the Quickstart Guide to dive right in, or see our talk Integrating Locomotion in Unity, Unreal, and Native Engines from Oculus Connect 5.

VRTP is also available on the Unity Asset Store here.

What is Tunnelling?

Much of VRTP's core is based on "Tunnelling", a technique to reduce sim-sickness in VR games, experiences and apps.

Artificial locomotion in VR - cars, spaceships, first-person "thumbstick" movement - causes sim-sickness in many users. This is a result of a mismatch between the motion they feel and the motion they see. Tunnelling is a highly effective method to reduce this for a large number of users.

It works by fading out peripheral vision. The subconscious uses peripheral vision heavily to interpret motion but the conscious brain largely ignores it - as such, reducing motion in the periphery combats the overall motion disparity users feel without significant information loss.

Additionally, the periphery can be replaced with static imagery to counteract motion even more strongly, "grounding" users in a static reference frame. This is called a "cage" as including a cage or grid maximises this effect.

VR Tunnelling Pro

Key Features

  • Multiple modes
    • Color vignette
    • Replace periphery with skybox/cubemap cage
    • Replace periphery with customised full 3D cage
    • View VR scene through static "windows"
    • View cage through world-space portals
  • Masking
    • Exclude objects from the tunnelling effect
      • e.g. static cockpit to help ground users
  • Fully configurable
    • Tweak any settings in-editor or at runtime for full control
    • Preset system
      • Easily define multiple presets that users can switch between at runtime
    • Rich API
  • Mobile-friendly version included
  • Compatible with Multipass and Single Pass Stereo
  • High performance

Roadmap

We are working on multiple new techniques which are being developed on the dev branch. These include counter-optic flow, artificial tilt and more. For full details please see the Oculus Connect 5 talk linked above.

We are also working on the Unreal Engine 4 version which will be available on our Github and on the Marketplace.

Documentation

HTML documentation (mirroring that at the official docs URL) can be generated using Doxygen. If you have Doxygen installed on Windows, you can just run Docs~/BuildDoxygen.bat to do so. The Docs~ folder will be ignored by Unity, and the resulting HTML docs will be ignored by git.

Credits

Developed and maintained by Dr Luke Thompson (@six_ways | github)
Research and support by Tom Heath on behalf of Oculus
Art assets by Gary Lloyd (@garylloyd89)

vrtunnellingpro-unity's People

Contributors

sigtrapgames avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.