Learn to use this Early Access feature, but use caution when shipping with it.
This feature is Early Access.
Features available in Early Access give you the opportunity to learn how they work, plan your pipeline, and create test content. You should use caution when using these features in production, as we are still working to get to shipping-quality performance, stability, and platform support. We support backward compatibility for assets, and the APIs for these features are stable.

Cascade To Niagara

While both Cascade and Niagara can be used to make visual effects inside of Unreal Engine, using Cascade to create and adjust visual effects is vastly different from how you use Niagara to achieve the same results. In this document, we will take a look at how to transition from Cascade to Niagara to make all of your visual effects. This new tool puts more power into the hands of the artist, to create additional functionality without the help of a programmer. We take some inspiration from movie FX tools, and try to make the system as adaptable as possible, while keeping usability high and accommodating 90% of use cases.

Niagara Overview

Niagara is Unreal Engine's next-generation visual effects system. It's a complete replacement for Cascade, but it will coexist with Niagara until Niagara's functionally has fully superseded the functionality of Cascade. In the image below, you can see a high level breakdown that covers how Niagara works with Unreal Engine.

CascadeVS Niagara.png

How is Niagara Different Than Cascade?

The power of Niagara lies in the ability to share arbitrary particle data in whatever way the user chooses. This enables users to script their own behaviors, rather than requiring code intervention to create new features. In Cascade, particle simulations are controlled by hard-coded modules, with each providing a specific set of functions to modify particle attributes. In contrast, Niagara simulation is controlled by node graphs that artists can create and edit.



Another reason Niagara is superior to Cascade, is that Niagara's node graphs are compiled to byte code that runs in a low-overhead interpreter, resulting in high performance even on CPU simulations. GPU simulations are implemented, and switching between the two is transparent. With a few caveats, any emitter should be able to use CPU or GPU simluation, based on user choice.

Cascade & Niagara UI

When you first open up Niagara, the User Interface (UI) will look completely different than Cascade. However, if you take a close look, you will notice that the Niagara interface does share some similarities to Cascade, such as the following.

  • A real-time 3D viewport to visualize effects while they are being created.
  • A Curves Editor for adjusting R, G, B and Alpha values.
  • A Details Panel for adjusting various properties.



Niagara Emitters & Systems

One of the biggest differences between Cascade and Niagara is how you build emitters. When using Cascade, emitters are built as a self-contained unit. While this made the emitters easy to place and spawn, it also made it hard to share behavior between different emitters, or to update emitters, because everything had to be done manually. Niagara changes all of this, by giving visual effects artists the ability to control, add, or modify any part of a visual effects behavior right down to the pixel level. To accomplish this, Niagara particle systems have been broken up into the following two parts:

  • Niagara Emitters: This is a single visual effect that will be combined with other Niagara Emitters to make a Niagara System. If we are making a fire effect, the Niagara Emitters would be each of the different elements that make up the fire effect such as the smoke, fire, distortion, and sparks.
  • Niagara Systems: This contains everything needed for a single effect. Continuing with our fire example, this would be the completed fire effect that contains the Niagara Emitters for the smoke, fire, distortion, and sparks.