Single Texture Fire system
With the help of Substance Designer, I created a Fire VFX system for Unreal Engine 5 with Niagara. All features of this system are driven with the same one packed texture, making it really light on memory.
Video Demo
Technique
In this texture, the red channel drives the shapes of the fire particles, using the sub UV feature of Niagara to randomize which of the 4 primary shapes it will use.
The age of the particle drives color, opacity and size, note how it goes from a magenta, to yellow, to red, as well as a general red glow flicker surrounding the system.
The green channel drives the shape of the smoke, with much of the similar features of the flame body, with a bit more consideration for how the particles merge into each other, in order to not make it too obvious that theyre just picking from 4 primary shapes.
The blue channel handles distortion for everything, I use a material function to avoid having logic duplicates, and that way if I want to change the logic of the distortion effect, I simply need to adjust that one function.
Finally I add a bit of polish by adding sparks with an aggressive curl noise.
Fire VFX in one texture.