The VR Software Landscape

Ingmar Vroege
Virtual Reality Pop
7 min readFeb 13, 2017

--

My name is Ingmar Vroege, I’m one of the founders of the company Bricks & Goggles, a subsidiary of Digitalisma. At Bricks & Goggles we convert CAD files to Virtual Reality (VR). In this blog series I write about the challenges, opportunities and possibilities that VR brings for the yachting market.

Of course, everything depends on what you want to do with VR, in my last 2 blogs I wrote about the different forms of VR and which hardware to choose for a particular solution. In this blog I'd like to tell something about the software side.

Since software is something very vague for most of us I'll try to explain some of the possibilities, first we'll dive further into Panoramic VR and further in this blog we'll find out what software can be used for Immersive VR.

Panoramic VR Artist Impression.

Creating artist impressions is something very common in the yachting industry, its a way of converting the idea of an architect into something visual for the client. Artist impressions often are very realistic, this realism is achievable in artist impressions since longer render times are usually not an issue.

What is rendering according to Wikipedia?

Rendering or image synthesis is the process of generating an image from a 2D or 3D model (or models in what collectively could be called a scene file) by means of computer programs.

Popular 3D modeling programs are 3D Studio Max and Blender. Since the introduction of the Google Cardboard and the Oculus Rift, new plug-ins have been built to make panoramic renders. By viewing the image through the lenses of a VR Headset the user gets the idea of being literally inside the render.

Rendering panoramic pictures takes a lot longer than normal artist impressions, simply because they have to cover the whole room. The biggest benefit of this technique is that you can get a good impression of a small room without having to be concerned about the placement of viewpoints that create the best impression of the room.

Your VR panoramas can be distributed in many different ways. Tools like Pano VR enable you to create tours through multiple viewpoints which can be accessed via a weblink. Next to that you can upload your panorama to Youtube, therefor you need to create a small video of 1 frame (your panorama), repeat it for x amount of seconds and upload it to Youtube from which users can watch it in VR or non VR.

A panorama render viewed without a VR Headset

VR photography
The same techniques are used to create VR tours from panoramic photography, therefor a special 360 degree camera is required which creates the same panorama pictures only without the render time.

VR animation
An animation is nothing more then multiple pictures displayed rapidly after one another. A VR animation takes a very long time to render since each frame (panorama) has to be rendered individually at a very high resolution (4k at least), otherwise the panorama will look pixelated. This also applies to a single VR panorama.

Immersive VR software

In immersive VR the user is able to walk around freely through a computer generated world, like in a video game such as GTA V. Next to that it is possible to have interactive elements in the environment (opening doors, activating elevators or driving around a tender), changing from day to night or actually communicating with other people can be added. The basics of creating an immersive VR experience is very similar to game development, only with VR there are some extra things to keep in mind.

Polygons and frames per second
Every VR experience is made from a 3D model which consists of polygons, these polygons are little triangles that together form a model. The more polygons a model contain the more detail a model has.

So this far more polygons are good right?

Well, if you want to create artist impressions (still and panoramic) then more polygons create more realistic images, but rendering will take longer since there is more to calculate.

For immersive VR the biggest challenge will be creating a realistic and detailed environment with the least amount of polygons. Immersive VR is a difficult thing for a computer to process twice as difficult compared to a normal 3D computer application since every image has to be calculated twice, once for each eye with a slight offset between the images so the user will see depth.

Low detail immersive VR
High detail immersive VR

So what's the problem?

If you decide to build a game, you design an environment that doesn't contain many polygons yet still looks detailed. When visualising projects you receive a 3D model from an architect as a source file, these models often contain a lot polygons since the models are used for cutting, assembly and engineering. In order to be able to use these models successfully in VR, the amount of polygons need to be reduced to the point where the model still looks detailed enough, but does not have too many polygons.

What happens if you don't reduce polygons?

The human eye sees changes when you turn your head, this feels natural because the image you see changes fluently. A VR headset projects 90 computer generated images per second through its lenses. This number needs to be so high to approximate the natural fluent feeling when you turn your head. In the future this number will most likely be even higher when computers get faster. At the moment 90 images per second is the standard. When the amount of images per second drops under 90 the user will notice slight stuttering which might cause the user to get nauseated

If you want an immersive experience based upon an existing 3D model you have to reduce the amount of polygons. Programs like 3D Studio Max and Blender are ideal to use. You can choose to spend less time reducing but then you can't add as much elements like lighting and interaction. The maximum amount of polygons and the possibility to add more interactive items and advanced visual effects differs a lot per project.

Creating the experience
Once the model is reduced to a certain amount of polygons in for example 3D studio max, the file (.fbx) can be exported to a Game-Engine.

Game-Engines are used to build games, the most popular engines for immersive VR are Unity and Unreal Engine. These engines add movement (walking, jumping, sprinting) , interaction (shooting, throwing etc.) and lighting to the game.

Once the model is loaded into the engine the developer can start adding colliders. These colliders are invisible walls and floors, the user is able to navigate between these walls and on those floors. Next to the colliders you have to add a character, which is able to walk and jump but can also do certain things like shooting and selecting options.

At this point you're able to walk around the model in VR. In some cases this is sufficient, when you want to do a quick review of a technical space or just want to see the proportions and dimensions of a room. But now the real fun starts, you can add lighting and shadow which create a certain feeling of a room, you can add moving elements like doors, a wavy sea and birds and basically do everything to create a lifelike experience.

Immersive VR vs Panoramic VR

Immersive VR is something completely different then a Panoramic VR. Choosing which one is the best for you can be quite hard since there isn't much information available yet on budget and time. Some things to keep in mind when considering to build an immersive VR experience are that you probably have to outsource work to a specialised company in comparison with panoramic VR which is easier to do yourself. Outsourcing means adjusting a workflow and work in extra time to a timetable. On the other hand, the possibilities of immersive VR are endless and its a matter of time before people want to design, choose and collaborate from the comforts of their home by putting on their headset and start walking through their yet to build yacht.

In my next blog I'll write about the costs of VR, Thanks for reading!

Feel free to opt-in to my subscribers list: http://eepurl.com/cxHR4X

If you have any questions and/or remarks don’t hesitate to contact me on: Ingmar@shipsandgoggles.com

--

--