Skip to main content
Skip table of contents

Reflections in Pixotope

Reflections are a complex subject in 3D rendering, and they become even more challenging in Virtual Production.

TLDR

We recommend using Lumen for reflections. Learn more about Lumen Compositing in Pixotope

General objectives

For virtual objects

  • Cast shadows onto the real world, simulating occlusion of real light

  • Reflect onto the real world, mimicking reflections on real-world reflective surfaces

For real objects

  • Reflect onto virtual objects

  • (Optional) Cast shadows onto virtual objects

In reality, there's a feedback loop between shadows and reflections in the real and virtual world. We usually don't attempt to model this with perfect accuracy.

The Challenge

We're working with Unreal Engine, a game engine not originally designed for Virtual Production. It expects to have access to the exact locations and properties of everything in its scene.

Reflection/Shadow technologies

We need to handle

  • Screen space reflections

  • Screen space ambient occlusion

  • Planar reflections

  • Lumen Reflections/Shadows/GI

Options for reflections

Lumen (recommended)

In Unreal Engine 5.x, Lumen is being pushed strongly as the future of light/shadow/reflection compositing. For that reason we are focusing our efforts on making the support for Lumen in Pixotope as good as it can be doing virtual production.

image-20240813-122405.png

Planar reflections

  • An option if you're willing to trade performance

  • Can mitigate certain artifacts that appear with Lumen

To use

  1. Change the Reflections Method to "None" on the PostProcessHandler

    image-20240813-105231.png

  2. Add a Planar Reflection from the Place Actors > Visual Effects panel

For proper use between AR and XR, the planar reflection needs to be in the same level as the holdout objects and included in the hidden list of the planar actor.

UnrealEditor_MUEws3sCgI.jpg

Screen space reflections

  • Lower quality, better performance

To use

  1. Change the Reflections Method to "Screen Space" on the PostProcessHandler

    image-20240813-105341.png
image-20240813-105559.png

Standalone ray tracing

  • Deprecated by Epic

  • If you're using UE 5.3 or older, we recommend Lumen instead

  • For versions newer than 5.3, this option is not available

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.