Coming from a design background and slowly moving towards a more tech side, there’s a lot of things to consider when choosing an engine to work with when designing for VR (time, learning curve, graphics, potential usage, pros and cons, etc). Here I try to consolidate various articles and form my own understanding of what I think it’s important before taking the plunge and decide between various game engines (and maybe decide on one).
We all know that the biggest names include Unity and Unreal Engine, a lot of developers are already working with one of these (maybe even both) engines. Both Unreal Engine and Unity support the biggest VR platforms (Oculus Rift, HTC Vive, Gear VR, and Playstation VR), which is good news, but still leaves us newbies wondering…“so…where do I begin?” So for this article’s sake I’m going to compare Unreal Engine and Unity (because they’re both free, highly used in the industry, tons of documentation to get you started, and are both available in my lab ;) ) so here we go.
Disclaimer: I’m currently just focusing on using these engines to develop for HMDs & VR. Different engines may cater or allow more flexibility towards different needs. It should also be mentioned that your decision will also depend on what type of experience you want to design in VR.
Unity- The good
- Tons of great tutorials and documentation (especially for beginners).
- (According to a lot of people) It’s more approachable, and takes less hours to build something.
- Interface is easier to digest and get around.
- Can run in low hardware.
Unity- The “bad”
- Graphics are not the best when compared to Unreal Engine 4 (EU4).
- Not friendly to non-coders (however, there’s plenty of documentation/communities to get around this).
- Although they provide tons of free assets, they aren’t as powerful/useful as EU4's freebies.
Unreal Engine 4- The good
- A lot of tutorials & documentation to get you started.
2. Has dedicated design resources and optimization tools -> high-end & immersive VR.
3. Use Blueprint (visual programming). Drag and drop nodes and customize with C++ code. However, it’s not as easy as it sounds, blueprint has its own learning curve.
4. Prebuilt assets and effects -> quickly create environments, particles, etc. Also great to test as placeholders while separate assets are built and integrated.
6. Better graphics -> more shadows & terrain graphics.
Unreal Engine 4- The “bad”
- C++ (but only if you’re not familiar with this type of language).
- Interface is pretty loaded and everything takes longer to load.
- Might be too high-end for proof of concept of developing demos.
Overall, both engines are pretty useful for developing VR experiences. Unity3D is better for making smaller experiences or Demos. However, it has better support for VR features. Unity seems to be more for programmers while UE4 is more for artists/designers.If you have the time and luxury, you should try to learn working with both so that you can get your own opinion; they’re both great engines that cater to different needs and will get you the right results if used correctly. Personally, I might stick with Unity 5 for now as I try to develop quick concepts,so I do not need high-end graphics, which is exactly what I want.