Scene Optimisation
This topic covers tips and best practices for configuring and optimising Unreal Engine scenes for use with RenderStream. We recommend using the Verification Checklist before taking a project to stage.
Alpha and frontplates
Section titled “Alpha and frontplates”Tips for using alpha with Unreal Engine assets:
- In Designer, set the RenderStream Layer’s BlendMode to Premult Alpha.
- To preserve alpha through post-processing, enable alpha channel output in Project Settings › Rendering:
- Unreal Engine 5.4 and earlier: under Post-Processing, set Enable alpha channel support in post processing (
r.PostProcessing.PropagateAlpha) to Allow through tonemapper (2). Epic lists this setting as experimental: it works only with Temporal AA, Motion Blur and Circle Depth of Field, and it disables separate translucency (see Rendering Settings). - Unreal Engine 5.5 and later: enable Alpha Output under Default Settings (see the Unreal Engine 5.5 release notes).
- Unreal Engine 5.4 and earlier: under Post-Processing, set Enable alpha channel support in post processing (
- Check that
r.SceneColorFormatis4(64-bit floating-point RGBA), so the scene colour buffer has an alpha channel. Alpha output must also be enabled, as above.
If alpha doesn’t come through as expected, see Troubleshooting.
For frontplate cameras and channels:
- Set frontplate cameras to Default Visibility Hidden, and add every component that should appear in the frontplate to the Force Visible section.
- In each frontplate channel’s Show Flag Settings, disable Fog and Atmosphere. This stops that channel rendering them. The fog and sky atmosphere actors stay in the scene, so the backplate still renders them.
- Don’t use sky domes or full-frame effects in frontplate channels.
Split rendering limitations
Section titled “Split rendering limitations”Some default Unreal Engine effects can cause problems when a frame is split across render nodes in a cluster pool. The table below groups them by why they can fail, which also shows what to do about them. It isn’t an exhaustive list.
The RenderStream Channel Definition component has a Show Flag Settings list (under Scene Capture) where you can enable or disable individual Unreal show flags, such as depth of field, bloom and motion blur, for each channel.
| Type | Effects | Why it can fail | What to do |
|---|---|---|---|
| Relative to the whole image | Vignette, Chromatic Aberration, Lens Flare, Auto Exposure | They’re calculated relative to the edges, centre or overall brightness of the image. Each render node only has its own tile, so it can apply the effect as though its tile were the whole frame. | Disable them for the channel in Show Flag Settings. For auto exposure, use manual exposure. |
| Blur and screen-space | Depth of Field, Bloom, Motion Blur, Screen Space Global Illumination (SSGI), Screen Space Ambient Occlusion (SSAO), Screen Space Reflections (SSR) | They sample neighbouring pixels or what’s visible on screen, so near a tile border they’re missing what’s on the other node. | Padding and overlap can reduce this, but evaluate it case by case. Otherwise, disable them for the channel. For global illumination, see Global illumination. |
| Temporal | Temporal Anti-Aliasing (TAA), including Temporal Upsampling; Temporal Super Resolution (TSR); Ray tracing (denoiser) | They build each frame from previous frames, and that history can differ between nodes near tile borders, producing ghosting or visible seams. | Where these artefacts occur, use a non-temporal anti-aliasing method: FXAA, or MSAA if the project uses the forward renderer. For ray tracing, consider baked lighting. |
Seams between split frames
Section titled “Seams between split frames”When a frame is split across render nodes, anything calculated from each node’s own view can differ between the parts and show a seam where they meet.
Post Process Volume
Section titled “Post Process Volume”By default, Unreal Engine sets the exposure of a map’s PostProcessVolume automatically (auto exposure), so each part of a split frame can end up with a different exposure. To fix the exposure:
- In the PostProcessVolume, expand Lens, then Exposure.
- Set Metering Mode to Manual.
- Adjust Exposure Compensation, either with a value that suits the scene or with a float curve.
Camera Actors and CineCamera Actors can override exposure settings from the Post Process Volume. Set their exposure to manual too, and set the Apply Physical Camera Exposure toggle the same way on every camera that renders the scene. Matching the toggle alone doesn’t guarantee matching exposure: the cameras’ other exposure settings need to match as well.
Global illumination (Lumen and SSGI)
Section titled “Global illumination (Lumen and SSGI)”Lumen uses screen-space traces for short-range detail before falling back to its surface cache and distance fields. With tiled rendering, those screen traces are clipped at each tile’s border, which can cause seams.
Screen Space Global Illumination (SSGI) calculates bounce lighting only from the pixels in each tile’s own buffer, so it has no data beyond the tile’s edge. That can cause hard lighting cuts, missing bounce light and visible seams along the split, which is why it’s in the split rendering limitations table above.
Baked lighting doesn’t depend on the camera’s view, so it avoids both problems. See the lighting recommendations in the Verification Checklist.
Troubleshooting
Section titled “Troubleshooting”- Alpha isn’t coming through: hide post-processing effects one at a time in the RenderStream Layer to find the cause, and check the alpha settings above. On Unreal Engine 5.4 and earlier, Epic’s alpha setting works only with Temporal AA, so switching to FXAA or MSAA can affect alpha.
- Alpha edges look rough or missing: try High, Epic or Cinematic for the Post Processing and Effects scalability settings, then check that the GPU workload still meets the target frame rate.
- Output on a render node looks cropped, scaled or misaligned: check that Windows display scaling on the render node is 100% at the native resolution. If the interface must be scaled, use a second monitor as the review screen.
- Content takes a long time to appear after enabling alpha or changing the transport configuration: the shaders for Unreal assets are recompiling, and the workload status on the RenderStream Layer shows the progress. A shared Derived Data Cache reduces compile times on render nodes (see DDC Setup).
- Seams between the parts of a split frame: see Seams between split frames.
For other RenderStream and Unreal Engine problems, see UE RenderStream Troubleshooting.
Further reading
Section titled “Further reading”For more information about Unreal Engine rendering settings, visual effects and performance optimisation, see the following Epic Games documentation:
- Rendering Settings: Configure project-level rendering settings, including alpha channel support and post-processing.
- Viewport Show Flags: Enable or disable individual rendering effects, including fog, atmosphere, depth of field and motion blur.
- Anti-Aliasing and Upscaling: Compare temporal and non-temporal anti-aliasing methods, including TAA, TSR, FXAA and MSAA.
- Auto Exposure: Configure manual exposure, exposure compensation and physical camera exposure.
- Lumen Technical Details: Understand Lumen’s screen tracing and global illumination methods.
- Unreal Insights: Profile Unreal Engine performance and investigate bottlenecks.
- Guidelines for Optimizing Rendering for Real-Time: Identify performance bottlenecks and optimise real-time rendering workloads.
See also the Verification Checklist for checks to run before taking a RenderStream project to stage.