The Nevers Fire VFX Recreation: from Improvement to Integration
This week my goal was to try my darndest to get back on track and make progress at a more efficient rate so I could feel a bit better about the timeline of this project, and I’d say that endeavor was at least semi successful! I was relieved to hear in critiques last week that the initial flame burst I’ve been fighting with for pretty much the entire semester is finally in a pretty satisfactory state simulation-wise, and the other elements are starting to come together as well. There’s definitely still a lot of work to be done though, so let’s get into it!
As I mentioned before, the initial burst in the first part of my shot was finally looking just right in my work in progress video for last week, it was truly a miracle. The only thing I ended up adjusting for it this week was changing the velocity pattern just a little bit to add a bit more asymmetry to the butterfly shape the flames fan out in. Thankfully, that was the extent of the time I had to spend working on the initial burst!
My next task that required a bit more work was refining my sparks simulation. The sparks in the reference shot from The Nevers has some quite pretty sparks that almost feel like pixie dust, very light and small sparks that gently float through the air after bursting out with the fire. My sparks from last week were still feeling too heavy and dying too quickly and uniformly, so I went back into the pop net this week to play with numbers until I got something that looked right. I mainly adjusted the wind force and air resistance being enacted on the particles, balancing those forces with the velocity in order to maintain the energy from the burst but make them feel much lighter overall. As for the lifespan issue, I ended up creating a second pop source of particles so I could have two groups of sparks: one that dies off quickly and one that lingers a little longer to float around in the wind. This also solved my issue of not having enough sparks in comparison to my reference, and funnily enough wasn’t something I realized you could do within pop nets.
After that, I just adjusted the pscale of my sparks overall and tried to add a bit more variation to width across all the sparks. I also fixed the texture of my sparks, because I realized that somehow I forgot to add an actual material to the sparks in solaris. The sparks still rendered out with the color variation I tuned within the obj context, but the look just wasn’t quite right. So, when going back through my scene this week I went ahead and wired the Cd attribute into a MaterialX subnet in solaris through the Display Color attribute, and lo and behold my sparks looked much better already!
Once I got the sparks out of the way, it was time to work on the real beast I had to conquer for the week: the flame streams coming from my hands along with the flame shell. I started creating the particle simulation and subsequent pyro simulation for the flame stream last week, but I ended up having issues with the collision with the flame shell that stopped me from making further progress. I enlisted the help of the great Nelson Lim to try and figure out how to move forward with both the flame streams and the flame shell, since even my flame shell simulation was still just off in some way when compared to the shot from The Nevers.
After a very interesting and experimentation-filled meeting with Nelson, we came to the consensus that I might have been going about creating the flame stream and shell setup the wrong way this entire time. If you really scrutinize the reference shot from the Nevers, you can actually start to tell that the flame streams don’t really interact with the flame shell in the middle at all, it’s just a sort of illusion as the flames shoot straight out and end up dying after they overlap with the flame shell. I definitely wasn’t complaining about that discovery, since it largely simplifies the setup I need to make for the flame streams now that I don’t have to worry about setting up collisions. The flame shell though, was a whole other matter.
Since the beginning of this project, I had always had trouble figuring out how exactly the flame shell was made. I ended up going with the simplest route of using a sphere as the base geometry for it, simulating particles on top of it to get the sort of vortex-y spherical behavior it exhibits in the reference. However, after looking closely at the reference again with Nelson, we both realized that the base geometry might not be a sphere at all. Instead, it almost looked like a sort of tube of fire wrapping around itself to form the shell-like shape.
Were either of us 100% sure this was the correct method to use to create the flame shell instead? Nope, but we both knew that my original method was always missing something, so it was worth a shot to try out a new method entirely. The final version of this new experimental flame shell for this week ended up being simulated from a spiral geometry that was deformed with some noise, given cyclical velocity, and animated to rotate.
Finally, in an attempt to start some more work on the comp process and integrating my VFX with my footage, I created a rough way to track the movement of my hands in the footage in Houdini so that I had some semi-accurate points to simulate the flame streams from. I also have started to create the roto mask I’ll be using eventually to mask out my hand that is in front of the fire, but that process has only just begun and definitely is not in a usable state at the moment. But, I’m happy to finally be making more progress towards my final shot and integrating the live footage and VFX together!
So, that’s what my work in progress shot ended up being for this week. My stress about finishing and polishing this project by the end of the semester is still very much present, but I am starting to feel a little bit better about being able to tackle it all. It’s hard sometimes not to think that I wasted half the semester on struggling with learning pyro simulations and creating setups that didn’t work, but I always try to remind myself that time was not wasted, it was just part of the process I needed to learn this new system within Houdini. And slowly but surely, with each failed setup and new iteration, I am getting more familiar and a little quicker at creating pyro setups-- so I’ll take that as my small win through this painful process.