Raymarching Fog Environment

Render Engine: Unreal 5

Production Time: 6 Weeks

Concept Reference: “Heavy Air” by Vladimiar Motsar

Link to ArtStation: Raymarching Fog

Link to ArtStation: Volumetric Fog Techniques in UE5

Accomplishments and Techniques:

  • Hand-painted albedo, normal, roughness, ambient occlusion, height, and metal maps in Photoshop

  • Created base texture by baking an ambient occlusion map from a simple metal floor model in Maya

  • Compiled handpainted textures into a material and rendered in Toolbag

Project Overview:

This is a game-ready UE5 environment I created based on the 2D concept "Heavy Air" by Vladimir Motsar. I wanted to explore fog and mist shaders in Unreal Engine, and this proved to be the perfect opportunity! I was able to create a custom raymarching fog shader that receives directional light and marches it through a volume to determine density and light absorption at a determined number of points throughout the volume. I then created a custom tool to go along with the shader, which allowed me to paint fog within bounding boxes for unique shapes and levels of density scatter.

The fog shader and tool were created with the help of Enrique Ventura and Ryan Brucks, whose tutorials can be found here:
https://www.youtube.com/watch?v=eDYyBc3cRmw
https://shaderbits.com/blog/ue4-volumetric-fog-techniques

Wrapping Up:

I wanted to create a painterly post-process shader that matches the rough, oily feel of the concept piece. I was able to accomplish this by writing a shader based on the Kuwuhara filter, which smooths and blurs hard edges while also reducing noise.
The fog rendering process utilizes a texture sheet that was distributed by Enrique Ventura. The boulder meshes and textures were obtained from Quixel before being manipulated to fit my needs. All other assets in the scene including the grass, landscape, decals and additional shaders were created myself.
"Heavy Air" can be viewed here.

Next
Next

Painterly Urban Environment