Put that in the UV rays of your color ramp and send the result to your emissive slot. Next generation graphics ezpz!
These. I cannot stress how much that helps. Looking back at E3 2018's Skull & Bones gameplay video, the largest “Diffuse Color” texture used in VFX was 16 x 128 pixels. Everything else is just channel-packed masks.
As a bonus, the same texture can then be used for different things.
From there we use 2 ramp textures. Very small. The first ramp is an albedo ramp and the second is an emission ramp. For an explosion it would look like this:
Albedo ramp: DXT1, 16×16 px
The reason why this is not a simple vector color picker in the material is that we can easily edit the smoke tone in our explosions throughout the game by opening this little texture in Photoshop and changing the grayscale value. This way, we don't have to edit each effect individually and maintain the uniformity of colors when more than one animated texture is used in a particular effect so that they blend better together. Very low cost for a simple pipeline.
Emission ramp: BC7 128×16 px
RGB: emission color
A: Emissive Pre Multiply
Basically we assign the albedo ramp directly to the albedo term, but for the emitting ramp we try it out with: UV = float2 (1.0 + (-animatedTextureMask2.r), 0.5); So the animated R-channel from Mask2 animates the balance between smoke and fire.
Basically, you can skip the part over the smoke gray if you code the lighting directly in your texture … and simply execute the emission element. A little bit of advice: you should use your emission mask to mix some black into your albedo (what is covered by what you send in emitters). Otherwise your emission color will be affected by the lighting and your fire color may not be what you want depending on the sun color / time of day.
More details about the process here: Smoke lighting and reusability of textures in Skull & Bones