Introduction to the Virtual Reality World
11 January 201912 May 2017 | Software Development
“Virtual reality was once the dream of science fiction. But the internet was also once a dream, and so were computers and smartphones. The future is coming.”
Mark Zuckerberg, Facebook post, March 25, 2014
With the increased popularity of smartphones and their high-density displays and 3D graphic capabilities, virtual reality (VR) and augmented reality (AR) products experienced a rapid growth and become more and more integrated into our daily lives.
The boom of the digital media technology and the desire of the tech companies to push the boundaries fosters innovations and the desire to develop new applications that harness the use of this technology by any means.
What is Virtual Reality?
The virtual reality (VR) term was coined by the American computer scientist Jaron Lanier in 1989. It refers to a virtual environment, a visualization of complex data representing an imagined or styled place.
Most of the existing virtual environments contextualize experiences in recreated places, be they historical, geographical or archaeological. All the virtual environments require special hardware to manage the 3D model and the direct gaze.
Types of Virtual Reality Systems
The VR systems are classified into the following groups:
- The non-immersive systems, such as Desktops and LCD TVs;
- The augmented reality systems (HMD), defined as systems that simulate virtual objects for the user to see in the real world;
- The immersive systems (CAVE) – defined as systems that create virtual worlds in a designed indoor space.
Head-Mounted Displays Fundamentals
A head-mounted display (HMD) is a helmet or a face mask that provides the virtual and auditory displays. It uses LCD or CRT to display stereo images and may include a built-in head tracker and stereo headphones.
There are two types of wearable VR head-mounted displays (HMDs): the tethered type and the mobile-rendered HMDs.
The tethered HMD, represented by Oculus Rift DK2, has the ability to render rich graphical scenes with high frame and visual quality.
The mobile-rendered HMD, represented by Samsung Galaxy Gear VR and Google Cardboards, relies on a smartphone by using the phone’s sensors to look around into the different virtual worlds. Furthermore, the wireless connection enables the free movement of the users.
The simplest and the most accessible head-mounted display is the Google Cardboard.
The Architecture of a VR system
As we can see in the image above, the input processor controls the device used to input information to the computer and to send the coordinate data to the rest of the system (mouse, trackers and the voice recognition system) in a reduced time-frame.
The simulation processor represents the code of the VR system. It takes the user input along with any tasks programmed and determines the actions that will take place in the virtual world.
The rendering processor creates the sensations, the output to the user. Different rendering processes are used for haptic, visual or auditory sensations.
A VR system also has a world database, which stores the objects from the virtual world.
Creating Content for a Virtual App
There are two types of content for a virtual reality application, each of them having different use cases. The VR content can be created by taking either a 360-degree immersive video or a 3D animation or construction.
With 360-degree video, viewers stay in the same place all the time and pivot on the spot to look around into the virtual world. For editing 360-degree videos, I recommend VideoStich, a broadly used tool.
Virtual reality 3D animations offer the advantage of letting viewers move freely in the space they are placed in. The easiest way to create a 3D model is to use the Structure Sensor. This camera, similar to a 3D scanner, captures and replicates instantly the real environment into 3D models. Another option is to create a 3D virtual reality experience through game engines like Unity or Unreal Engine.
Due to its interactive elements and large applicability, the virtual reality technology is very attractive to the entertainment sectors and is already embraced by video games enthusiasts.
But apart from that, VR has endless potential to shape the future of many industries and change the way we do our jobs today. For example, VR could be used to simulate dangerous/extreme situations, such as medical procedures, treatment of phobias or military training.
This is only a high-level introduction to the virtual reality concepts. There is a lot more to learn, but if you are starting a VR project, you should definitely check out the Daydream and Google Cardboard section from the Android Developer website. Good luck!