LJ last minute attempt

Latest update here:

Had a few hours. I installed UE and gave it a go. Mostly done in maths with a noise


I’ll continue to work on it…

My goal is to make the flames affected by the world wind. I’ll based myself on previous RND I’ve done in the past. That you can see here:

I want to improve it.
As you can see, the flames are always leaning in the same world direction. If you are looking at the flames in the same direction of the wind, the wind factor was set to 0. In my firecamp, I would like to blend that with another behavior.

These were mesh particles (basicaly three planes side by side) with a continuous uv space that went in U from -1 to 2.
The flames were intially drawn on the center plane. The two adjecent planes were used when the flames had to react to the world wind,

Obviously this method created some overdraw issue. But in general, you could used a lot less particles to represent the whole thing. In the example, for each fire you see none of them used more than 7 particles, even for the larger ones. Yet, I would like to resolve this by offsetting the vertex if the wind is not strong enough (no gust) and for the part of the mesh that is not affected (wind direction)


I think that it was used Y-Axis Billboard, and wind and view vector operations controls Uv space. Is it correct? I think it’s a funny way. Moreover, it is a beautiful silhouette.

Yes these meshes are Y-Axis locked. A subtraction of the view vector by the position of the fire. This is “doted” by the wind vector to get the directions into which the uvs are beeing rotated.



what a jump! Looks great! :+1:

  • Decided to work on a little setup… having too much fun modeling in Houdini. :slight_smile: It’ s a first pass.
  • Did not do much on the shader yet. Except a depth fade. Also linked the wind to it.

Next step: Create the mesh particle and implement it.

  1. Create and integrate the fire mesh particle
  2. Setup the wind in the shader so the flame is leaning in the same direction
  3. Create a noise texture that will replace the noise node. I found having a lot more control generating the deformations in Houdini via VopCop generator and deform nodes. I’m also using a CHOP net to normalize all of my values.

Next Steps:

  • Integrate the new noise
  • Shader optimisation (maximizing the space)
  • Second pass on the environment material
  • Vertex offset on unused side(s) of the mesh

Quick update:

New noise integrated. I decided to go for a tilable noise instead of a flipbook. The outer seams were showing up once the wind pushed the uvs out of the 0-1 space.

I have to organise the way dynamic parameters are controlling the flames. With the same material, I would like to drive small medium and big flames.

In this update:

  • Second iteration on the log shader… Adding a first pass emissive
  • Divided the flames in two seperate emitters.

I still did not start to adress the overdraw caused by these meshes. I’m also considering scattering the meshes on the logs in Houdini. This might end up braking variety… unless I bake an offset in the vertex color :thinking:
I would scatter two points per particle on a same log… one could be my position and the other my blend offset… hum.