Introduction to VR in Unity & Unreal

Probably one of the more difficult situations in VR right now is not all hardware is the same. Different headsets currently have different development needs on the back end. I hope as we continue to better our hardware and evolve in VR - we will begin to see a more streamlined, single process of development. 

Device Options:

First thing I want to point out is preparing for development for the device you are working with. Some VR hardware requires additional installations (such as the Vive) to begin testing and developing on. While you can develop without the headset plugged into the computer you are using, I find it helpful to have the headset handy for the testing purposes of the environment. Also - While testing, Unity favors having the headset plugged in, while Unreal feels like it has a much smoother process for testing VR.

HTC Vive -

Vive in Action
24867790474_b2184e01b0_z.jpgVive in Action

Vive in Action

Tested and used with the SteamVR - the Vive needs Steam set up to run the testing process. Both Unreal and Unity will look for your Steam program to access the headset. 

Steam VR Pop Up Window for VR

Steam VR Pop Up Window for VR

Steam VR Pop Up Window for VR

OpenVR References:

Microsoft Mixed Reality -

Microsoft Mixed Reality Set
23879090058_ba3f7c3bbe_z.jpgMicrosoft Mixed Reality Set
[4]A description

Microsoft Mixed Reality Set

The mixed reality headsets offer the combination of the real world and virtual world together. However, at the time of writing this there was still a fork for the Unreal Engine that seems to be needed when wanting to work with the Microsoft headsets in the engine. Unity provides documentation and support for the headset:

Note that the above two headsets are not the only headsets available out there, and both Unreal and Unity provide options for development for many more. I hope this area will continue to grow via contributions and edits.

Concerns & Things to Consider:

VR is new enough that as a developer, you have to take your users into consideration.  Virtual reality Sickness is a thing! Poorly designed and implemented environments can make even the most seasoned veterans of VR queezy . In "Unreal Engine VR Cookbook", McCaffrey (2017)[5] provides an excellent list of best practices including:

  • Avoiding screen space as it can throw off the stereo matching between the eyes
  • Avoid accelerations that can cause vestibular mismatching
  • Aiming for frame rates that are slightly higher than the target display frame rate (Unity has a great note in their documentation about Frame Rates)
  • The player's head motions should be in control of the camera at all times.

Keeping these in mind can make you a better developer and also keep your participants happy. Remember that although we can create immersive and amazing environments, the player has to come first.

Return to top