How to be a VR Developer:
— A technical guide, updated August 2022
During my research on how to become a VR Developer myself, I came across no straightforward, concrete information. Most reliable sources were last updated years ago and things move really fast in the VR industry. Articles from 2019 are too old to use as a guide because there are so many updates and substitute features simply within the last few years. Therefore, I made a series of notes to help myself understand better.
These words are a technical guide of the basic requirements to become a VR Developer as of Aug, 2022. They do not talk about how to get a job in the field of XR. Regardless, I hope they inspire growth.
There are a few things you need to be familiar with to become a VR Developer. You need knowledge of the software used to build for VR, and the hardware used to experience that creation in VR. To use this software up to its abilities you’ll need knowledge of some languages used to code elements of the VR experience/game and interactions.
Software
Starting out in VR, there are 2 go-to software options to build in. Usually developers pick one and stick with it.
Unreal and Unity are the two most popular software you can use to create VR experiences. They existence mainly within the VFX and Game Development industry and are still primarily used for video games and simulations for mobile/computers. Any extended knowledge in that industry and you earn bonus points.
Unity is a cross-platform game engine developed by Unity Technologies, first announced as a Mac OS X game engine and updated to support a wide variety gradually. Unreal Engine was created as a game development engine within Epic Games (the face behind Fortnite) to primarily be used for first person-shooter games with interactive experiences, and immersive virtual worlds.
It’s efficient to get familiar with the process of VR Development using platform. Choose the right one for yourself when starting out. You can read in details about Unity vs Unreal Engine for VR here. It’s helpful to start off with one, but for your growth as a developer, it’s good to gain some experience with both eventually.
Hardware
Quality hardware costs a lot of money in this industry. Being at a developing stage, there are also rapid improvisations and updates across the competition. Similar to software, it’s best practice to start with one.
For Headsets, there are a few to choose from including Meta Quest Pro, Oculus Quest 2, HTC Vive, Sony PlayStation VR, Microsoft HoloLens. In most cases, developers/designers also stick with one throughout their creations but tend to be familiar with the specs of the rest, having tried and worked with them through networks. Choose a headset that is compatible with your preferred software and displays the type of work you do.
The machine you use is equally important to be able to optimize your creations. For example, it’s better to have a powerful machine set up or a laptop capable of handling the game engine to work on Unreal Engine, while Unity is capable of running on a standard developer friendly laptop or machine.
Languages
Technically there are only 2 languages to know. Only 1, if you pick a software and move ahead with that. Unity makes use of C#; Unreal uses C++.
Created by Microsoft, C# or C-Sharp is very easy to use with a standard learning curved and wide range of libraries. C# has its roots within the C family and gets most of its genes from C, C++ and Java. It’s easier to get up to speed with C# if you’re familiar with those languages.
C++ is a very strong and powerful language. It also has a steeper learning curve, it’s not something you’d want to start off of bas a beginner to code. That being said C++ is perfect for game development and gives you a lot of control over the application.
Once you learn one of the languages, it makes it easier on you to move towards the others within the family. Choose your starting language wisely, based on your level of experience writing code and the the software you choose to make your games/experiences on.
Lastly, there are skills that you may either have from a previous/pre-existing job or can gain throughout your life. These are what some people call nice to haves. I instead like to think of them as what give you an edge over every other VR Developer. Being a Creative or a Designer, for example, helps achieve better elements and aesthetics for your VR game/experience. Being a Software Developer will make the coding easy for you, helping your timeline and production levels. Knowing about the hardware and having knowledge has an Engineer will expand your ability to create and lead to a lot of technical ease. Similarly having a general knowledge in UX (User-Experience) implemented for XR can make your game/experience comfortable for the users.
Being a VR Developer means being a part of the XR Community. You are actively being part of creations with leading technology and should practice some things to be mindful of — be inclusive, share your work, encourage other developers/creators, be helpful to everyone — and be kind towards the ups and downs VR will take before it’s a natural part of our society. Work together to shape the future of VR.
For an inspiration, check out — How to become a VR Developer.