Niagara UI Renderer

Michal Smolen - Code Plugins - Jul 1, 2021

Render Niagara particles directly into UMG widgets

  • Supported Platforms
  • Supported Engine Versions
    4.26 - 4.27, 5.0 - 5.3
  • Download Type
    Engine Plugin
    This product contains a code plugin, complete with pre-built binaries and all its source code that integrates with Unreal Engine, which can be installed to an engine version of your choice then enabled on a per-project basis.

Video: https://youtu.be/iFa40Sf4QPA


The Niagara UI Renderer Plugin adds a Niagara Particle System Widget that allows you to render Niagara particle systems directly into the UI. The plugin supports sprite and ribbon CPU particles.


With this plugin you can finally use Niagara particles in the UI, without the hassle of creating expensive render targets. Just drag the Niagara System Widget into your widget blueprint, select your Niagara particle system, add your materials into the Material Remap List and you're good to go! For the step by step guide, please visit the documentation.


This plugin was tested on Windows and Android, but it should work on other platforms too. They are not officialy supported, because I don't have a way to test in on the other platforms.


You can use "stat NiagaraUI" console command to check the performance of your particle systems. In my test scene running on an AMD Ryzen 9 5900X, it took 0.05ms to generate the sprite data and 0.1ms to generate the ribbon data for 1,000 particles.


If you want to get help getting started with this plugin, you can take a look at the tutorials:

Beginner Tutorial

Intermediate Tutorial

Advanced Tutorial


Technical Details

Features:

  •  Adds a Niagara System Widget
  •  Supports CPU particles only
  • Supports Sprite and Ribbon particles
  •  Allows remapping particle materials to the UI materials in the widget itself
  • Automatically convert particle materials to the UI materials
  • Directly transfers the widget location to the actor location so it supports moving / animating the widget


Code Modules:

  •  NiagaraUIRenderer (Runtime)
  • NiagaraUIRendererEditor (Editor)


Number of Blueprints: 0

Number of C++ Classes: 10

Network Replicated: No

Supported Development Platforms: Win32, Win64

Supported Target Build Platforms: Win32, Win64, Android

Documentation: https://sourysk.github.io/NiagaraUIRendererDocumentation/

Example Project: https://github.com/SourySK/NiagaraUIRenderer/releases/download/v1.0/NiagaraUIRenderer_Demo_ProjectOnly_1.0.2_4.26.zip

Important/Additional Notes:

  • Supports only CPU particles
  • Supports only Sprite and Ribbon particle renderers
  • You can use "stat NiagaraUI" to see how long it takes to generate particle data.
  • After you selected your CPU Niagara System and still can't see it, the most likely cause is that you don't have Material Remap List set up correctly. Please take a look at the documentation to see how to set it up.