Pyre - Fire/Plasma VFX - How is it done?

On Twitter I was asked how this FX done. I’ve no idea but maybe we can talk about it together. So at first, here are some images in 25% speed:

My suspicion: A highly tesselated geometry (cylinder?) which gets distorted and alpha-cutout like in this example which I quickly put together:


Looks a lot like the vertexanim examples @Luiz shows here: Houdini for Games // Luiz Kruel // Houdini Illume Webinar on Vimeo Check 1:27:00 or so.

That was from a stream so it’s laggy as hell. But I’ve seen examples that look just like the pyre one posted on discord.

I doubt you’d be able to get the mushroom shape with the cutout method.


Hmm, I have no idea at all. But this might give you a result which is really close to examples:

-Really high poly mesh, or tesselated
-Vertex shader used to offset the geometry based on scrolling texture.
-Fresnel in the pixel shader to find the rims.
-Make the whole thing double sided.

I don’t think its a cylinder, because you would have to do more offseting to get a result even though the eventual result would look the same.

Here’s my quick test. I forgot to add in a groundfade, but other than that I’d say I could get fairly close using this technique.


I’m an amateur at this stuff but here’s my attempt, I came to same conclusions that it was based on vertex animated meshes, but I lack the experience creating the simulation to make it look good.

The main problem I see with this method is how to you create a looping or dynamic simulation? Is that possible in Houdini?


Yes, Grab the games shelf, drop down a “Make Loop” node. Job done.

Or, do it manually by timeshifting the sequence and % it back to the start like in any loop. Use the volume mix node to blend the two together, just like an AE loop.


Wish I could trade in Max for Houdini at work :cry:


I’d bet that Max drops in price substantially this year.

Hey guys, VFX and UI artist for Pyre here. Just got an email pointing me to the thread. First time here - what a cool forum, lots of inspiring work.

Anyway looks like you guys are pretty close! I actually did the fluid sim in Maya, and used SOuP tools’ upres fluid to get the additional wavelet turbulence detail. Then indeed output to a mesh and assigned vertex colors using a ramp based on the fluid sim temperature. Mesh turned out to be more useful than voxel for this effect because it allowed some additional deformations (twist, FFD) to push the shape closer to the concept art, as well as providing nice clean edges. To achieve the loop I just crossfaded the fluid cache.

Rendered to exr with some other properties that seemed useful: z-depth, normal, AO, motion vector, and did the rest of the compositing in After Effects with additional gradients, noise masks, glows, some distortion and additional particles.

Each team in the game has a primary and secondary color represented in their Pyre; the secondary color is represented in the smaller “core” of it, which was a separate fluid sim but voxel rendered instead of mesh.


It’s probably great for modeling, but it seems like most things you’d need, or would be very useful for current top-end effects, you need a multi-hundred dollar plugin for. Even still, sometimes you need a plugin to make better use of that first plugin, or you spend hours setting up a very specific rig for one effect.

Also, unless the info just hides itself from me when I search for it, if there are abstract fx sims you can do with Max right out of the box, there is little-to-no information on how to do them available.

[quote=“kirbyufo, post:9, topic:2785”]To achieve the loop I just crossfaded the fluid cache.

That would be a great tutorial.

1 Like

Thanks for following this up! Really interesting, cool to know I was thinking along the right path, though I can’t get results anywhere near as good with Maya fluids! Will check out SOuP for sure.

Oh wow, so the final effect in the game is “just” a flip-book on a camera-fading plane?

Yeah I really wanted to use more fluid sims in general on Pyre but they often proved difficult, time consuming and unruly. Sometimes it feels like just randomly swirling paint around in a bucket and hoping for a usable result.

Yep, pretty much! There are six different layers to this effect to allow for the dynamic colorization and lighting, but in the end they are all synced flipbooks.


FYI, all of supergiant’s games are purely “2D”. Lots of hand drawn stuff, and rendered out sprites flipbooks.

Awsome,I tried copy yours in my game.Used a cone mesh,shadered fresnel based on a normal texture,and do vertex animation by its R channel.But my edge fresnel glow seems rough.Please I want to know the problem in my shader’s algorithm or the accuracy of normal texture?