Full Dome Rendering

[with real-time engines]

Full Dome Rendering with Real-Time Game Engines

I have worked on a number of Full Dome productions for planetariums over the years for HomeRun Pictures as well as with Carnegie Mellon University. Much of the work I have done for planetariums has been created in Maya and AfterEffects. I have also worked on full dome games using Unity3d. Since HDRP and 360 rendering has been available in Unity I have been moving towards rendering for 180 dome projections utilizing gpu base rendering exclusively. There are a number of benefits I hope to gain from rendering in real-time engines and bridging the gap between real time and pre-rendered 360 imagery.

Rendering with a real time engine can bring the following benefits.

  • Huge cost and energy savings.

  • Huge time savings

  • Many more iterations of renderings

  • Simulation of millions of particles in real-time

I'm writing about some of my experiences I've had with gpu rendering for planetariums. If you are interested in either generating 360 videos or other spherical projections for immersive media I hope I have some knowledge I can share in that respect.

Unity 2021

Full Dome Rendering in Unity

I have been using Unity3d for many years, so I've done quite a bit of VR and 360 rendering with it. I've had a lot of success with Unity Recorder. Recorder is capable of outputting some pretty high resolution 360 image sequences. There are a number of issues that one comes across when rendering in unity for 360 projections. Here are some things to avoid and help renders turn out better.

  • Bloom. Turn it off now. Bloom is best done in post. It can cause large differences in brightness from one face of the cubemap render to another. If bloom could be done as the last process on the entire output of the render that would be nice.

  • VFX particle systems seem to only render in one face of the cubemap camera rendering system if the bounding box of the emitter is not large enough to encompass the particle system.

  • VFX Distortion meshes can cause artifacts at edge of camera frustum.

  • Using particles with billboard type renderers can result in issues at the edge of camera. Avoid using billboard particles unless the particles never cross from one cubemap face to another.

  • NEVER turn on the FullDomeCamera and then open up the game view. The game view MUST be open before turning on the FullDomeCamera. This seems to cause frequent crashes.

I've worked with several different 360 rendering systems. They are terrific, but not everything works out as easily as one might hope.

Here are some of the options for generating 360 panorama images that I have used.

Recorder is built in now. It works pretty well. Doesn't have any amazing set of features though.

Unrefined but it does work with earlier version of Unity. I haven't had too much success with it lately though and doesn't seem to work with newer versions of Unity.

Unreal Engine

Full Dome Rendering in Unreal 5

I've made some attempts at rendering 360 videos with Unreal using the Panorama plugin available for free. There are some amazing animations being created in Unreal 5. After some attempts to run a project in Unreal 5 with the Panorama plugin I have unfortunately not had any success. The plugin seems to crash the project before it can be loaded.