Epic Games releases Unreal Engine 4.20
Epic Games has released Unreal Engine 4.20, the latest update to the game engine, adding Niagara, its next-gen VFX editor, a new cinematic DoF system, and new features for rendering photorealistic humans.
The update also introduces a new universal mesh format, marks the official debut of the new Proxy LOD system, and integrates Unreal Engine with the Shotgun asset management system.
As ever, the full changelog is far too long to cover in detail here, so below, we’ve tried to pick out the highlights as they apply to artists.
VFX: new Niagara FX framework accepts data from external apps like Houdini
Of those, arguably the biggest is Niagara, Unreal Engine’s new programmable visual effects editor, which makes its debut in version 4.20 in early access.
Intended ultimately to replace UE4’s Cascade particle editor, Niagara is intended to be more flexible than its predecessor, to interact with data from more sources, and to run interchangeably between CPU and GPU.
Although both systems are modular, Cascade modules are hard-coded, whereas Niagra’s are controlled by node graphs, and are fully customisable.
In both cases, modules are then grouped together to form emitters. But whereas Cascade emitters are self-contained, Niagra emitters are themselves components of a new high-level grouping, the Niagara System.
For example, in Niagara, flames, smoke and sparks might all be generated by separate emitters, which are then grouped together to form a single Niagara System representing the overall fire effect.
This should make it easier to share behaviours between emitters, and to update completed effects.
Niagara is also designed to accept data from more sources: both from other toolsets within Unreal Engine itself, and from external software applications.
Side Effects has developed a Houdini integration plugin for Niagara, but Epic tells us that it will also be possible to stream in Alembic data, making it compatible with most DCC tools.
In addition, Niagara’s node graphs compile to bytecode that runs in a “very low-overhead” interpreter, resulting in improved simulation performance, and full interchangeability between CPU and GPU.
In Unreal Engine 4.20, both CPU and GPU simulation are supported on PC, on consoles, and on mobile devices via OpenGL or Metal, with Vulkan and Nintendo Switch to come.
GPU simulation currently doesn’t work for particles generated from meshes or spline components, but Epic says that “with a few caveats”, any Niagara emitter should be able to be simulated on CPU or GPU.
Rendering: a faster, more stable way to mimic cinematic depth of field
Another key addition is the new Cinematic depth of field method, first demoed at GDC 2018 in the Star Wars ‘Reflections’ demo (above), and which replaces Circle as UE4’s default DOF method.
Using procedural Bokeh simulation to achieve a cinematic look, Cinematic DOF is described as faster and cleaner than Circle DOF, has dynamic resolution stability, and supports the alpha channel.
In Unreal Engine 4.20, it is available on desktop, consoles, and mobile devices via Vulkan.
Digital humans: new options for shading human skin and eyes
Anyone following Epic at GDC will also have seen Unreal Engine 4.20’s other new features in action, in the shape of the new digital humans features used in its Siren and ‘Digital Andy Serkis’ demos.
These include new features for shading human skin, including a new dual-lobe specular model, support for backscatter on transmitted light, a Boundary Bleed Color setting and Short Distance Dynamic Irradiance.
The latter two generate more realistic shading around the mouth, nose and eyes, controlling how one subsurface scattering blends into another, and mimicking the effect of light bouncing from the cheeks.
The Eye Shader also now supports a dedicated normal map for the iris, generating more believable detail.
Geometry: new universal Mesh Description Mesh format mesh format debuts
Another interesting change is the new Mesh Description Mesh format: a new higher-level intermediate format that can represent any type of mesh asset inside Unreal Engine.
That means that static and skeletal meshes – and potentially, other ‘mesh-like’ objects like terrain – would share a common internal representation, and could be edited by the same geometry tools.
Data imported directly to the new format would also preserve higher-level mesh representations, such as quads or edge hardness.
In Unreal Engine 4.20, only Static Mesh has been converted to use the new format, so you won’t see a difference in day-to-day workflow, but it’s one to look out for in future.
Geometry: Proxy LOD system officially released for production
The update also marks the official release of the Proxy LOD system, in early access since Unreal Engine 4.19, and designed to replace the Simplygon LOD system, which required an external licence to use.
New features this time round include automatic gap filling, which generates much simpler proxies for buildings by closing doors and windows; and better user control over the normals of proxy geometry.
The Proxy LOD tool is currently only available in Unreal Editor on Windows.
Editing: frame accuracy and new Media Track feature in Sequencer
The Sequencer editor, intended for creating game cinematics or offline animations, also gets an update.
The biggest change is that Sequencer is now frame-accurate: it represents time as an integer value, not a floating point, which should minimise problems with the positioning of keyframes or camera cuts.
There is also a new Media Track designed for playing back media sources: for example, a photographic backplate for an animation.
According to Epic, it currently works best with image sequences, particularly EXR sequences.
Other changes include support for weighted tangents in the Curve Editor, the option to animate variables on Anim Instances, and the option to import or export sequence data in Final Cut Pro 7 XML format.
AR and mixed reality: new Mixed Reality capture framework, nDisplay system for immersive environments
Unreal Engine 4.10 also introduces a new Mixed Reality Capture (MRC) framework, currently in early access.
The toolset is intended to composite players into a virtual space to make it more exciting to spectate on games, rather than to composite CG characters into the real world.
It includes components for video input, calibration and in-game compositing, and supports the use of the Vive Tracker or similar tracking devices to match the location of the camera to the in-game camera.
The Augmented Reality framework introduced in Unreal Engine 4.19 gets support for Google’s ARCore 1.2 and Apple’s ARKit 2.0 and early access support for the Magic Leap One: Creator Edition headset.
Pipeline integration: support for Shotgun
Another key change, particularly for studios using Unreal Engine in a pipline with offline assets, is integration with the popular Shotgun production-management system, currently available in early access.
As well as making it possible to use the Shotgun loader to import assets into an Unreal project and open the Shotgun panel from the Unreal Editor UI, the integration adds Shotgun commands to contextual menus.
Smaller graphics features: rectangular area lights, materials and animation updates
Other changes relevant to artists include support for rectangular area lights, intended primarily for indoor environments containing large artificial light sources like television screens or fluorescent panels.
Rectangular area lights act “mostly” like point lights, but are computationally more expensive when moving or casting shadows, and currently only work with the Deferred renderer.
I/O changes include support for metadata when importing FBX files, accessible via Blueprints or Python scripting. The Alembic importer now imports frames iteratively rather than in bulk for improved performance.
Materials changes include support for Curve Atlases to store colour curve data, for more complex ramp effects (above). It is also now possible to label saved colours in the Color Picker.
Animation changes include the option to save and reuse mapping data across multiple meshes in the Animation Retarget Manager and minor improvements to the RigidBody Anim Node and clothing physics.
There is also “very experimental” new geometry caching system in which individual vertex animation frames are compressed using an intra-frame codec based on Huffman encoding, designed to reduce memory use.
Other changes: optimisations for iOS, Android and Switch
Outside of the graphcs toolsets, there are “well over 100” optimisations to improve the performance of UE4 titles on iOS and Android devices, developed during Epic’s work on Fortnite Battle Royale.
Key changes include support for unlimited Landscape Material layers on mobile devices, hardware and software occlusion queries via ES3.1 or Vulkan, and improved Android debugging.
Developers shipping to Nintendo Switch get a smaller set of optimisations made for Fortnite, including support for dynamic resolution and improved CPU rendering and texture compression.
There are also the usual range of performance increases – garbage collection is now “up to 13x faster” – and features designed for coders, which you can find listed in the release notes.
Pricing and availability
Unreal Engine 4.20 is available for 64-bit Windows 10, macOS 10.13.5 or Linux. Use of the editor is free, but Epic takes 5% of gross beyond the first $3,000 per quarter for any product you release commercially.