This week, Unreal Engine released their latest UEv4.14 upgrade and it includes several cool mobile features:
VR Multiview Support for Mobile
VR Multiview is an extension of OpenGL ES available on Android devices. Multiview allows the developer to simultaneously render two viewpoints of the same scene, representing the left and right eye perspective, with one single draw call. By effectively halving the rendering requirements this extension reduces CPU and GPU load compared to traditional stereoscopic rendering. The blog “Understanding Multiview” by Thomas Poulet provides more detail on how to use this extension to exploit maximum benefits.
In the UE4.14 editor you can enable Mobile Multiview as per the picture below:
The Multiview feature in UE4 is currently only compatible with Mali GPUs.
Improved Vulkan API Support on Android
UE 4.14 enhances Vulkan support for the Samsung Galaxy S7 device, as well as the latest Android devices supporting Android 7 (Nougat) OS.
Vulkan brings many benefits to mobile devices and graphics developers. For developers, the API works cross-platform, covering everything from desktop to consoles and mobile devices. For mobile devices, Vulkan has a much lower CPU overhead compared to previous graphics APIs thanks to the support of multithreading. Nowadays, mobile devices have, on average, between four and eight CPU cores, so having an API which is multithreading friendly is key.
To learn more about Vulkan benefits and the comparison with OpenGL ES API, read this blog.
Forward Shading Render with MSAA
Unreal Engine releases a new forward shading renderer which combines high-quality lighting features with Multisample Anti-Aliasing (MSAA) support.
Anti-Aliasing is a technique for reducing “Jaggies” or step-like lines that should otherwise appear smooth. These step-like lines appear because the display doesn’t have enough resolution to display a line that appears smooth to the human eye. Anti-Aliasing is the method to trick the eye into thinking that the jagged edge is smooth by packing blended pixels on either side of the hard line depending on pixel coverage.
Anti-Aliasing (without and with)
Multiple levels of anti-aliasing are available on the ARM Mali GPU hardware. 4x MSAA is provided with ARM Mali GPUs with close to zero performance penalty due to the tile buffer supporting 4 samples per pixel by default. MSAA is well suited to VR applications as the eyes are much closer to the display.
More information about MSAA in ARM Mali GPUs is available as part of our developer resources.
Automatic LOD Generation
This new feature automatically generates several Level Of Details (LODs) of your static meshes. LOD reduces the polygon count in your graphics, as a different LOD is rendered depending on the distance of your mesh from the camera view point. Rendering large meshes consumes a lot memory and battery power. It’s therefore very important to render the images at the most efficient LOD level, that is to say, rendering to the lowest LOD that does not show visual artefacts or compromise visual quality. By rendering content to this optimal point rather than to the highest resolution, mobile devices can benefit from huge decode time and energy savings.
UE4.14 can automatically calculate the screen size to use for each LOD level created by ticking “Auto Compute LOD Distances”.
To find out more about LODs in UE4.14, or have more details of all the features released in 4.14, please read the UE4.14 release notes.