Need More Pahoehoe

Hi guys I have been tackling the task of creating materials and props for our new level which takes place on a volcano. In my opinion, the most important part of volcanoes is some nice flowing magma.

After searching the internet for a good place to start, We found a great tutorial by Karen Stanley on how to create believable lava with Substance Designer. I recommend downloading her tutorial as it goes into much greater detail than I will on this blog post. Her tutorial has helped me understand what Substance Designer is capable of, leading me to tweak her methods to work well in our game.

The first step is heavily relies on the blend node. The blend node allows you to overlay one texture over another with functions similar to those found in photoshop like multiply and soft light. Using the plasma texture mixed with a cloud texture gives us a nice base to work with. Adding cracks at this stage is also a good idea as we intend to warp the texture to give it that goopy lava feel.

Once we have a base we can add some horizontal noise to create a cool effect. Through Karen's tutorial we learned this effect is called pahoehoe, or the natural folds and lines that form as flowing lava cools.

The next step is to warp our texture with the Directional Warp node. Blending in more noise helps give options for customizing the texture. It takes a lot of tweaking to get the exact result you'll want.

Running that result through a levels node allows you to tweak the texture further before you run it through a Gradient Map node. The Gradient Map node allows you to create a color gradient that will change our previous result from a black and white image to a fully colored albeto map.

Using the same output we used to create our albeto map, we can blend it with a uniform grey in order to increase or decrease the result of a Height to Normal node.

This was one of my final results in Substance Designer. The next step is to put it in engine.

With the powerful UE4 material editor I was able to get some pretty cool results with the lava. Some of the functions used were a panner to animate the lava, Simple Grass Wind to give its world position offset, a Fresnel to add to the emissive, and the subsurface shading mode to add more depth.

And here's the material! It's still a WIP but I am fairly satisfied with the result. Huge thank you to Karen Stanley again for creating a marvelous tutorial for this sort of thing. Check her stuff out!

Thanks for reading

-Neal Krupa