In this section of the guide, we describe what you must consider when determining whether you should port a game or an application to VR.
VR creates a very different user experience compared to other application types. This means that some factors that work for non-VR applications or games do not work for VR. One of ways that you could see this difference is to test the application on a few different users to determine their comfort levels. Then adjust the code so that they find the experience comfortable.
For example, camera animations that are comfortable in a non-VR game might be uncomfortable in a VR version of the game. For example, the Ice Cave demo without VR has an animation mode for the camera. Some users find this uncomfortable and suffer motion sickness, especially when the camera moves backwards. Removing this mode prevents this unsettling experience.
Another example of what works in a non-VR application, but do not work in a VR application is visual effects. This can be seen in the non-VR Ice Cave demo which uses a dirty lens effect that changes its intensity based on the camera alignment with the sun. Users testing this effect in VR found that it looked wrong, so it was removed.
Users experience differences when controlling an application on a VR or a non-VR application, there are differences. This is because a non-VR application can be controlled using the touch screen of the phone or by tilting the phone.
These control mechanisms might not be possible in a VR application. For example, the non-VR Ice Cave demo uses two virtual joysticks to control the camera. This does not work on a VR device, because the touchscreen is not accessible. The Ice Cave VR demo is designed to run on Samsung Gear VR, which has a touchpad on the side of the headset. Using the touchpad instead of the touch screen solves this problem.
The following figure shows the touchpad on a Samsung Gear VR headset:
VR can benefit from control methods that are not normally associated with phones and mobile devices. Some of these methods are worth considering, depending on the target audience for the application.
Users can use controllers to connect to the VR device using Bluetooth. In this situation, the Ice Cave demo uses a custom plug-in that extends the Unity functionality to interpret the Android Bluetooth events. These events trigger movement of the camera.
The following image shows a person holding the Bluetooth controller that works with the Ice Cave demo: