Campfire (Houdini)

🔥 It was fun working on this project and make the motion of the simulation match the reference. Main struggle I had was to control the turbulence field the way I want. So after doing some research I found out a cool way to control the turbulence field based on distance. It's very simple and I think very useful to control fields as we want and gives creative control to artists. Below is the final version of my sim with everything comped in Nuke.
ASSETS
Firstly, for setting up the scene, the real world scale is very necessary to achieve realism and so we can tweak all the parameters in DOP network as per real world units. Houdini uses meters as its default unit and Maya uses centimeters. So if you are bringing any geo asset from Maya make sure to divide it by 100 in Houdini. I also put a human figure (our own friendly Tommy from Houdini) as you can see in the image below just to make sure of the scale of our asset.

There are three main assets that I created procedurally in Houdini for this project:

1) Ground
2) Big wooden logs
3) small wooden logs

GROUND : 

For ground, I made a sphere added some noise converted it into VDB so it looks more organic and converted back to polygon. Made it low poly after that (Let's name it small ground chunks).
Next, I made a huge sphere added some noise to it, scattered some points on it and copied those previously made low poly objects (small ground chunks) to the scattered points with variation in size and direction.
I converted the whole thing to VDB to give it organic feel, smoothed it a bit and converted back to polygons, added some noise and made it low poly.  Ground is completed. Super easy!

BIG LOGS :

I created a circle scattered some points on it. copied some tube (noise applied to the tubes) on the scattered points with varying scale and orientation. This is how the main structure of campfire was created.

SMALL LOGS :

For small logs, I made a sphere, squashed it and added the good old noise. Converted it into volume by classic "IsoOffest" node. Scattered some points to the volume and copied small tubes(noise was added to the tubes).
To bend them, I ran a for each loop with connectivity and bent each of them by random number.

This is how all the assets were created. Nothing complex, usual simple Houdini stuff :)
PYRO
In the version of my test below we can clearly see how turbulence is affecting the whole fire. When we look at the reference, the lower part of the fire is not as much chaotic. We have to solve that.
For that, I made a sphere and added some noise to it as we can see in the image below (Left Side). Created a distance based mask for the turbulence field as we can see in the right side of the image below. Which helped me achieve the motion I wanted.
AMBERS
Ambers were created with "PopNetwork" with some wind and turbulence noise with random hue colours and random scale. They particles fade off as they age and the colour also becomes dull with the age. 

One thing that I did for adding that particle burst is added one extra particle source channel with different values of turbulence intensity and wind and they die quickly and are fast. We can see this all in the network below in the image.
Thanks for reading, Cheers! 😄
Back to Top