top of page

Eternal Fire | Breakdown

The inspiration for this piece was from one of my favorite childhood movies, Lord of the Rings. I remember reading J.R.R. Tolkien's books and imagining and coming up with the landscapes, places, and characters I read about. In a way, those books and movies got me interested and excited about Animation and VFX, and thats when I knew this was something I wanted to pursue as a career.

Eternal Fire, Procedural volcano FX demoreel piece by arctiem - Houdini, Mantra and Redshift Breakdown

Process

I started by referencing actual active volcanoes,  like Mount Etna, Stromboli, and Vesuvius, to name a few. Then I moved on to what an active volcano's smoke plume looks like. While all realistic smoke plumes look impressive, they still lack the cinematic look of burning fire and ash and a sense of explosion/eruption one mostly sees in LOTR concept art. Hence, besides referencing some unique 2D concept artwork, I decided to do a quick matte painting before starting my project to help me visualize the end goal more. The volumes were rendered in Mantra, and everything else was rendered in Redshift.

Eternal Fire, Procedural volcano FX demoreel piece by arctiem - Houdini, Mantra and Redshift Breakdown

I did a quick matte painting at the project's start to visualize the mountains and framing. The initial idea was to have aliens invade the scene, but I chose not to go ahead for obvious reasons.

Eternal Fire, Procedural volcano FX demoreel piece by arctiem - Houdini, Mantra and Redshift Breakdown

Comp Work

Like any other project, I rendered out the AOVs I needed to reconstruct my beauty pass. In Nuke, I could dial in the color grading and look of my scene on an individual element basis. I like having control over my lighting and colors, and I've found compositing to be one of the determining factors in what makes or breaks a piece.

Houdini Setup for Terrain and Lava

The terrain was generated using heightfields in Houdini. As with any heightfield workflow, I layered heightfield noises, flowfield, remaps and distorts until I was finally happy with how everything looked. I used a heightfield erode right at the end to generate all of my masks that I could then use to texture the terrain inside of Redshift.

Lava was generated using different types of masks, primarily ambient occlusion masks. I processed the lava mesh through a point VOP that would factor in noises like Worley and Flow and then, based on the alpha luminance, would displace along the normals. This way, I could quickly look dev the swirls and patterns I wanted to appear on the lava mesh. I calculated another ambient occlusion map from this newly generated lava mesh and assigned low-intensity shaders to occluded areas and a high emissive texture to the nonoccluded areas.

Eternal Fire, Procedural volcano FX demoreel piece by arctiem - Houdini, Mantra and Redshift Breakdown
Eternal Fire, Procedural volcano FX demoreel piece by arctiem - Houdini, Mantra and Redshift Breakdown

Smoke Plume Process

The smoke plume was simulated using the Sparse Pyro Solver. At its height, the smoke plume is 77 million voxels. Since I was working on an accurate scale, rendering a single smoke plume at the volcano's size was almost impossible. Hence I rendered the plume at a much smaller scale and then instanced seven different versions of the smoke plume (different velocities)  to create the final shot. 

Since the scene was getting extremely heavy, I turned everything in my scene into a Redshift Proxy, so Redshift could load geometries and volumes without having to recalculate data into the RAM each frame. This way, I could avoid the constant "not enough RAM" crashes and speed up my workflow immensely. 

Eternal Fire, Procedural volcano FX demoreel piece by arctiem - Houdini, Mantra and Redshift Breakdown

Checkout other portfolio piece breakdowns here

bottom of page