Unreal Engine VR Occulus Rift

What sofware do I need to install to package a VR application using UE4 4.27.2?

In order to package your VR application, you need to have Microsoft Visual Studio 2019 with C++ installed, including all C++ Toolkits. You can download it from here: https://visualstudio.microsoft.com/downloads/

How to bake Ambient Occlusion for VR Applications using Unreal Engine in 4.27.2?

When Forward Rendering is activated, Ambient Occlusion doesn’t seem to be supported. You can check the Visualization Buffer and you will notice, that the AO Pass is just pure white.

At this point, I sent a ticket to Epic for clarification, if this is a bug, or if any baking for Ambient Occlusion is just not supported when using Forward Shading.

What LOD’s should I use when developing VR Applications using Unreal Engine 4?

Best practices are for sure to use LOD’s in the smartest way possible, depending on your game level and situation. If you have close-up shots, use a lower LOD Level (higher quality). Any object that disappears from your view, switch to a higher LOD Level (Lower Quality) for less expensive rendering. The same principles can be applied to MetaHuman LODs.

How to create Opacity Shaders for VR Applications?

I was running multiple tests and found that the decal Blend Mode Translucent and Lighting Mode Surface Translucency Volume works pretty well. Please let me know if you have any other options, ideas, etc. See shader settings in the screenshot below.

How to find a VR Unreal Engine Artist?

You can connect directly with a VR Unreal Engine Artist by contacting FattyBull.

Reflection Probes

ForwardRendering

Glow

Postprocess Volume

Testing: Execute Console Commande
Stat FPS
viewmode wireframe

Water

Normal Maps

Displacement Maps

SDK Packages for Quest2

Shader Models, Vulkan, etc.

Packaging Project Settings

Start in VR
Default Game Mode: VRGameMode


Is Ray Traced GI in VR possible yet?

My notes and updates running a bunch of tests in my VR Development process using Unreal Engine 4.27.2 and the OpenXR Template.

In general, using any active raytraced option in runtime is very expensive. No matter if it’s raytraced Global Illumination, Reflection, Translucency, or Ambient Occlusion. In order to achieve a steady 90 FPS for your VR application, it’s recommended to use Forward Shading and not deferred rendering.

When switching to Forward Shading, you can still use DX12 and Ray Tracing. And yes, you can also try to run your application in runtime. Just do it, like Nike says, right? And you will see, that your GPU will go under 90 FPS. Here we go. Fatal Headache.

For Virtual Reality Applications, this is a problem. So what’s the solution, and how to handle Ray Tracing for VR Applications?

My personal experience and best practices for VR applications, listed below.

  • Run your VR OpenXR Project Settings with DX12
  • Default RHI, Set to DX12
  • Activate Ray Tracing
  • Activate the GPU Lightmass Plugin and use it for the GI Bake
  • Use Reflection Probes to Bake Reflections

GPU Lightmass

The GPU Lightmass is used to bake Global Illumination. That’s about it. You can read the full documentation at the Epics website here: https://docs.unrealengine.com/4.27/en-US/RenderingAndGraphics/GPULightmass/

To make sure that the GPU Lightmass Plugin is working, your Project Settings have to be setup that way.

  • Ray Tracing > Ray Tracing
  • Virtual Textures > Enable Virtual Texture Lightmaps
  • Targeted RHIs > Default RHI: DirectX 12