Vignette visual effects are one of the most effecting ways to diminish or prevent simulation sickness (sim sickness). In this short blog post I’ll cover the steps I took to develop a prototype VR vignette for use in the demos and programs I create.

 

 


 

Intro

Virtual Reality (VR) in its current state has a prevalent limiting factor which effects most users to some degree during the use of VR headsets. This limiting factor is known as simulation sickness, or sim sickness for short. Sim sickness is similar to motion sickness and can cause VR users to experience dizziness, nausea, and headaches. There are many potential aids which users can implement in attempts to lessen or avoid the effects of sim sickness, although most of them only work to a mild degree which can vary drastically from user to user.

In my experience, the single most reliably effective measure to fend off sim sickness is the use of vignette visual effects within VR experiences.

 


 

Vignette Visual Effect

The vignette visual effect adds some form of shading or black area around the edges of the visible screen within a VR headset. This effect blocks out or diminishes the user’s perception of movement within their peripheral vision. Most examples of vignettes being used in VR applications become activated when the user visually moves around a virtual environment without their actual body moving at all.

As an individual who is very prone to sim sickness, the presence of a vignette feature is extremely important for me in any movement-based VR experience I plan to spend more than a few seconds in.

Being a VR developer, I spend a lot of time in VR. So, I decided it was about time to build a VR vignette feature for use with the in-house VR framework (PuppetJump) which the development team at the Center for Immersive Experiences (CIE) primarily uses when building programs and applications.

After a short bit of research, I came across an extremely helpful YouTube video (link here) which introduced me to a set of post processing features that are already built into the Unity Engine. This included a vignette feature.

The content of that video gave me the perfect starting point from which I was able to write and connect a bit of my own code. After a few test runs, I was able to connect the VR vignette feature to the joystick input which moves the user’s avatar around the environment.

Below is a video displaying this VR Vignette functionality in action.