WARNING! WALL OF TEXT!
Here’s a breakdown of the shader for the distorted flames:
I imported the normal map as a vector displacement map to get smoother distortions of the fire. It could of course be exchanged for a normal map compressed texture and you’d save around 256kb and wouldn’t have to use the bias scale between the mask and the multiply operation in the shader.
There are two panners in there. Looking exactly the same, using the same texture. But one has all the parameters connected to it called “Parameter_01” and the other “Parameter_02”. I’ve then changed scale on them in the material instance, how fast they pan and their intensity. I “hard coded” them to pan in a slightly different direction to make them return to their default position much later in time.
I painted the blue channel in the flames texture in a gradient manner that will cover the base and some more on the bases of the big flames. I multiply these values to the wobbly distorted flame values to limit the wobbliness to the top of the flame texture. Where the wobblieness should be strongest!
I’ve also used a Dynamic Parameter to add a random value through the particle system to the shaders panners in U. I had to minimize the chance of two particles spawning close to each other looking exactly the same. If you’ve connected the Dynamic Param in the shader it’s quite easy to hook it up in your particle system:
In this case, make sure you check “Spawn Time Only”. Since I’m using a Uniform Distribution the particle system will give me a random number between 0 and 1 only ONCE on EACH particle spawn. Giving every particle a more or less uniquely placed distortion texture.
Hopefully this can help someone with making their own awesome effects! If there are any questions regarding this I will gladly try to answear them!