Comfort and Sim-Sickness
In finalising the VR version of Sublevel Zero Redux, we’ve done extensive research and development into comfort. Sublevel Zero is a perfect case study for sim-sickness – a game where players move and rotate freely in all directions, often with no well-defined up or down orientation, at high speed, while dealing with intense combat and enemies coming from all angles. Our work has led to a number of really useful conclusions, and we’ve presented our work at conferences such as Unite Europe and Develop:VR.
For many players, “tunnelling” makes all the difference
As a result, the VR and non-VR versions of Sublevel Zero Redux have diverged not just in aspects like UI design, but even in physics. The ship’s handling is actually significantly “twitchier” in VR, while maximum turn rate is decreased. This decreases the amount of time spent accelerating rotationally, and thus decreases the amount of force the brain expects to feel. Furthermore, we found these tweaks were needed to make the game feel the same – in VR turning felt uncontrollably fast despite being identical. Added to this is the “tunnelling” effect seen in the game. When the ship turns, this reduces peripheral vision, from which the brain gets a large amount of its sense of motion. We’ve found for many players this makes the difference between a comfortable game and an instant vomit-fest.
Taking inspiration from the work others have done in this area, we’ve expanded the tunnelling options even further. Google Earth VR introduced a novel twist, by not just blacking out peripheral vision, but replacing it with a “grid”. This can work wonders to give players a solid frame of reference, making the motion “on screen” seem disconnected from reality. Adding this mode has given us some really positive results.
We’ve also added a mode to exclude the cockpit from the tunnelling effect. Since the cockpit is already a fixed frame of reference, it makes sense to keep it visible. Finally, up til now the tunnelling effect has been driven only by turning the ship. Players can now select two other modes – turning plus acceleration, and turning plus movement. In the former, tunnelling also kicks in when the ship is accelerating, and in the latter, is always present whenever the ship moves at all. These modes can really help motion-sensitive players enjoy the game.
Added to the existing tunnelling strength setting, this ends up in a lot of options for players to fine-tune comfort settings. We feel strongly that this is important – a key takeaway from our research has been that everyone responds differently, so player control is essential. But when does “lots of options” cross the line into “overwhelming mess”? Options are great, but not if the player doesn’t know what they do! So we’ve also implemented presets for players to quickly find roughly the settings for them, and they can fine-tune from there.
Performance and Optimisation
Getting the game to run smoothly in VR has been a tricky task. While the look of the game is colourful and stylised, early decisions on the underlying technology to deliver that look have come to define the performance aspects of the game under the extreme requirements of VR.
Primarily among these is the procedural generation. Early on – well before the true performance requirements of VR were established – we decided to use deferred lighting for Sublevel Zero. This meant we could use fully-dynamic lighting, with hundreds of lights, rather than having to bake lighting into the rooms used in the procedural generation. Unity’s system of light baking was at the time impossible to use with procedural generation, as it linked baking to levels, not individual objects. So we either had to create our own baking system – infeasible with our team and budget – or use deferred lighting.
This decision served us incredibly well for the most part. It allowed us to create and control a unique, vibrant, neon-saturated look that perfectly complemented the feel of the game, and on regular systems, run totally smoothly. But it later became clear that deferred lighting was VR’s nemesis. It saves CPU time, but pushes the GPU hard. And in VR, the number of pixels to render, and the number of times per second they must be rendered, is enormous. Valve estimate that the average VR game rendering to the Rift or Vive at 90fps is roughly equivalent to running a game in 4K at 50fps, pushing about 500 million pixels per second. In Sublevel Zero – lots of deferred lights writing each pixel multiple times – this becomes at least a billion pixels per second. Suddenly, our simple, stylised game becomes a bona-fide GPU melter.
We’ve managed to get this down with lots of small tweaks and tricks, like using the procedural generation data itself to work out which rooms the player can’t currently see, and turning them off. Various effects switch to a subtly lower quality setting in VR, and we now have two separate config files for all graphics settings (and also settings like screen shake) – one for VR, one for non-VR. So tweaking your quality settings in non-VR mode won’t mess up the performance of the game in VR, and vice versa. Finally, if your GPU is struggling, you can reduce the resolution in your headset with the “VR Resolution” setting. And likewise, if your machine is a beast, you can increase it for supersampling!
We’re hopeful that all of this will help players of all stripes get the most out of Sublevel Zero Redux in VR. Make no mistake – Sublevel Zero Redux will always be an intense game by its nature. We won’t compromise the fundamental core of the game – free, fluid movement and hardcore zero-g combat. This is probably not the VR game to show your grandparents. But we’ve worked hard to make it the best possible experience, and we hope you get hours of enjoyment out of it!