Mobile Rendering

Information about rendering features on mobile platforms.

Windows
MacOS
Linux

The mobile renderer for Unreal Engine 4 is a separate renderer from the desktop and console renderer, equipped with its own subset of features that are optimized for mobile devices. The sections on this page provide reference information and how-to guides for mobile-specific implementations of rendering features.

General Information

We recommend that you familiarize the Device Profiles guide, as Mobile devices depend greatly on Device Profiles in order to manage rendering features and scalability across a wide variety of devices. Additionally, you should review the Supported Rendering Features reference page for specifications of what rendering features are supported by the Mobile rendering paths.

Getting Started

Mobile Rendering Features

This section details rendering features that are available for the Mobile renderer and how to activate them.

Reflection Capture Compression For Mobile

Reflection Capture Components now support texture compression on Mobile devices. This reduces the memory footprint of reflection capture, making it more viable for Mobile projects.

To enable this feature, open your Project Settings, navigate to Engine > Rendering > Reflections, and enable Mobile Reflection Capture Compression.

ReflectionCaptureCompression.png

After enabling this feature, Reflection Capture Components on Mobile will use ECT2 texture compression by default. You can also change the compression settings for individual Reflection Capture Components under the Reflection Capture Mobile section in the Details panel.

MobileReflectionCompression.png

You can use this to fine-tune the quality of specific reflections.

Ground--Truth Ambient Occlusion (GTAO) on Mobile (Experimental)

Ground-Truth Ambient Occlusion is now available for mobile devices. This implementation of ambient occlusion enables mobile projects to improve the appearance of indirect lighting and shadows with a low performance cost.

GTAOMobile.png

With GTAO enabled, ambient occlusion is noticeable in the corners of this scene.

To enable GTAO, open your Project Settings, navigate to Engine > Rendering > Mobile, and enable Mobile Ambient Occlusion.

MobileAmbientOcc.png

Additionally, You must enable Mobile HDR, you need to set the r.Mobile.AmbientOcclusionQuality variable in [Platform]Scalability.ini to a value higher than 0. After that, you can use GTAO just like you would on other platforms.

Note that when implementing GTAO on Mobile, Mali devices will experience performance issues, as they have fewer than 1024 maximum compute shader threads.

Dynamic Spotlight Shadows for Mobile (Experimental)

Dynamic spotlight shadows are now supported on Mobile. This allows spotlights to cast shadows on both static and moveable meshes.

To enable spotlight shadows on Mobile, open your Project Settings, navigate to Engine > Rendering > Mobile Shader Permutation Reduction, and enable both Support Movable Spotlights and Support Movable Spotlight Shadows. You can also change these in your config files by setting r.Mobile.EnableMoveableSpotlights and r.Mobile.EnableMoveableSpotlightShadows to 1.

SupportMovableSpotlights.png

Spotlight shadow maps share the same texture sampler with CSM in the mobile base pass pixel shader, and both spotlight shadows and CSM use the same shadow map atlas. CSM is guaranteed to have space, while the spotlights will be sorted by shadow resolution.

The maximum number of visible shadows is limited to 8 by default, but you can change this by changing the value of r.Mobile.MaxVisibleMovableSpotLightsShadow. The resolution of the spotlight shadow is based on screen size and r.Shadow.TexelsPerPixelSpotlight.

Pixel Projected Reflection For Mobile(Experimental)

In Unreal 4.26, Pixel Projected Reflection support was added for Mobile devices, enabling reflection planes to generate screen-space reflections on Mobile.

PixelReflectionMobile.png

To use this feature, you must have MobileHDR enabled, and you need r.Mobile.PixelProjectedReflectionQuality set to a higher value than 0. Go to Project Settings > Mobile and set the Planar Reflection Mode to your desired setting. You must use either MobilePPRExclusive or MobilePPR to enable pixel-projected reflections.

MobilePPR.png

Currently, the following modes are supported:

  • Usual ---The planar reflection actor will function identically on all platforms.

  • MobilePPR ---The planar reflection actor will work as normal on PC/Console platforms, but uses pixel projected reflections on Mobile platforms.

  • MobilePPRExclusive ---The planar reflection actor will only be used for pixel projected reflections on mobile platforms. This leaves room for PC and Console projects to use traditional SSR instead.

By default, only high---end mobile devices enable r.Mobile.PixelProjectedReflectionQuality in [Project]Scalability.ini.

Other Topics

Reference

How-To Guides

Android-Specific Guides

Performance Guides

Select Skin
Light
Dark

Welcome to the new Unreal Engine 4 Documentation site!

We're working on lots of new features including a feedback system so you can tell us how we are doing. It's not quite ready for use in the wild yet, so head over to the Documentation Feedback forum to tell us about this page or call out any issues you are encountering in the meantime.

We'll be sure to let you know when the new system is up and running.

Post Feedback