logo80lv
Articlesclick_arrow
Talentsclick_arrow
Events
Workshops
Aboutclick_arrow
profile_login
Log in
0
Save
Copy Link
Share

How to Build an Atmospheric Environment Using ZBrush, Unreal Engine & Substance 3D

Max Bainbridge shared the workflow behind the Mountain Pass project, talking about the composition and the inspiration, discussing how he sculpted the rocks, the embankments, and the ruins, trying to achieve a hand-crafted look.

Introduction

Hey! My name is Max Bainbridge, an Environment Artist, and I've been in the industry just over six years as of writing this. Straight to the point, I started this scene as a way to test out and practice some workflows I'm interested in, and hopefully this breakdown can shed some light on approaches one might take for similar projects.

This environment was created in Unreal Engine 5 as a study in environment composition, lighting, and modern real-time rendering workflows. The scene focuses on a ruined stone structure partially reclaimed by vegetation, using layered foliage, atmospheric lighting, and detailed surface materials to build depth and visual hierarchy.

References

I used PureRef to organize my references. There are many more than what is shown here. As this was an original concept, I used references mainly of individual elements or ideas from other projects/games that I could try to integrate into this scene. The biome is very loosely inspired by a trip I took to Wyoming in 2024. The vistas, overlooking mountains, the ground assets, cliff faces, and some elements of the grass.

As the scene evolved, I would stray away from some hard references and start to interpret the references into my specific style for the project. But in general, this project had no specific reference or shot to be based on, it was purely from imagination.

Blockout

Early in the project, I wanted to establish the main camera angles and the general composition. Along with that, I wanted to tell a story with the environment. As things changed, I would ask myself, "What is the story of this environment? If I were a player, what emotion does this make me feel? How can I push this further?" Part of this is up for interpretation. The viewer can guess at what the story between the two characters is, and the environment can help give context to this relationship.

"Why is this character hiding up here? Is this an area they know? How did they get here? How long has this structure been there? What was this structure initially? Was it significant?" These are the sorts of questions I want the player/viewer to ask, and hopefully the scene can help provide some clues.

Composition

I wanted to push the composition in a way that I haven't used before. A big inspiration was the composition commonly used by Frank Frazetta, the iconic A-frame. However, in this case, as it's an environment piece and not a character close-up, I inverted the A-frame.

This is similar to cinematography used in old western movies. In some cases, they are closer over the shoulder, but I took that approach and applied it to the storytelling, whilst still showing much of the scene.

These are some similar compositions that acted as inspiration whilst working on the scene:

Sculpting

Assets like rocks, embankments, tiling textures, ruins, and scattered stones were all sculpted in ZBrush as I wanted to push the "handcrafted" look and continue to refine my organic sculpting skills. I used just a few brushes along with various alphas, but primarily just focusing on layering detail and prioritising the large shapes and forms of the asset and not getting too stuck in micro details, as that will be handled by the tiling textures.

Ruins Kit

This is a basic ruins kit used in the scene. Some fairly generic shapes that can be used as rubble or what is left standing of the structure. I included a kit of bricks that was used in the scene to be combined with the walls. This breaks up the silhouette and adds to the general detail of the scene.

The walls are made from a sculpt, UV'd on UV0 for masks and a baked normal, and UV1 for the tiling texture. The tiling texture was also a tiling sculpt from ZBrush and continued to be textured in Substance 3D Designer. I also made a Z-up function for moss to further reinforce the old ruin tone of the scene.

Grass

I took a new approach to the grass in this scene. I opted for full geometry grass, rather than traditional alpha card cutouts of grass clusters. This was partly because I wanted to learn a new approach to grass, and I wanted to get as much fidelity out of the geometry, whilst keeping the texture memory low. For the texture, it's actually just a 64x64 gradient atlas with a few variations for other biomes/seasons.

If this were a full production, this could be simplified further by making the albedo a curve atlas directly in Unreal Engine. I created each piece of grass and ground cover and would then have a "Kit" of wildgrass types to use across the project and any future scenes. I then cluster them together using some deform modifiers to get a more natural look.

I then transfer the red vertex paint attributes from a plane so I get a nice smooth gradient, and I use this red vertex paint gradient to drive the wind in the engine, ensuring that the top of the grass is influenced and not the base of the grass.

Landscape Decals

These are made as regular decals, from a sculpted base in ZBrush. Making use of Parallax Occlusion, I wanted to have the ability to add water to these decals based on a height value. This was using a simple height lerp. For the small stream erosion, I actually sculpted this as a tillable texture, so it can be duplicated and tiled perfectly, as you would with a tiling mesh.

Shader Breakdown

The shader is fairly simple and loosely based on some similar ones I've seen online or in other productions I've worked on. This can be optimized for sure, but I made it just to meet my needs for this scene. It's broken down into basic material parameters, with the water level being blended into the shader using height lerps. The textures used here are a Height texture, Albedo, and Packed ORM Texture (Occlusion, Roughness, Metallic).

Some basic texture controls, like tint and amount, are also in place, so they can be adjusted on the fly. You'll also notice that the shader makes use of named reroute nodes heavily. Despite this graph not being the cleanest, the reroute nodes help greatly with reusing noises and cleanly lerping the layers together.

In the normal, I blend in a flat normal constant for the water, and alternatively, have the option to enable water ripples that flow in a constant direction. I also make use of the occlusion texture to add some extra fake detail in the Roughness, Albedo, and Specular.

And that's the basic idea of this shader. I'd highly encourage you to explore different approaches with shaders (Given performance restrictions). You can learn a lot from other artists, assets on FAB, or breakdowns such as these. Try new things out and see where you can go.

Vista

I started by creating a hero mountain in Gaea. Focusing on a single mountain helps with directability,c and the output can be duplicated in level. My main focus was to get some interesting masks for different surfaces, such as snow, dirt, rock, vegetation, etc.

Once I was happy with my masks, I took the asset into Blender, removed any unwanted geo, and moved to Substance 3D Painter to begin layering some basic materials.

In Unreal Engine, I dressed the mountains and played with the scale and rotation. layering in some fog cards, and using very, very simple geo for the trees. Detail wasn't important on these, as from the camera's perspective, it was just shapes that helped break up ridgelines and gave the illusion of detail.

Lighting

For this scene, I focused a lot on the "tone" of the scene, and a big part of that was the lighting. It's not 100% accurate, and a lot of it is smoke and mirrors to get a specific look. I heavily used point and spot lights to exaggerate highlights and soften the overall lighting. I broke it down to foreground and background lighting. The background is focused on the mountains, and making sure to get nice directional lighting on them.

And the foreground is focused on drawing the viewer's eye to certain aspects, like the characters receiving lots of light, and the center of the screen generally being a bit brighter to draw the eye. I often would take an image of the scene into Photoshop and run it through a threshold to view it more clearly.

Feedback

During the development of this project, feedback was very critical in pushing it further at each milestone. I believe that feedback should be one of the main aspects artists should focus on, as it also can emulate a studio work environment, being highly collaborative, which generally is where we do our best work.

These are some examples of the feedback I'd get from Timothy Dries and the Beyond extent community during the WIP Wednesday live streams. This sort of feedback was instrumental in helping me figure out ideas or guide me in a direction I hadn't thought of. Timothy is great at giving feedback, and I would highly recommend others check out the community he has built for artists.

Conclusion

As a whole, this scene was purely a way for me to experiment with some shaders, lighting, and compositions that had been rattling around my head for a while. I enjoyed working on the organic elements and have some ideas for future improvements and workflow changes.

I was on and off working on this for many, many months, just picking it back up when I felt inspired to create something and challenge myself. The hardest part was envisioning the outcome and doubting whether I was heading in the right direction with the project. But in the end, I'm happy with how it came out. 

I'm always wanting to improve, and can see things I would change, looking back. But that being said, I'm already starting on something new and different, with a similar goal, to practice certain workflows and showcase my abilities.

Thank you for taking the time to read this breakdown, as it's my first written article. I hope it was clear enough, and someone out there will gain something from it. I am always open to DM's on ArtStation or social media to help explain things further.

Max Bainbridge, Environment Artist

Ready to grow your game’s revenue?
Talk to us

Comments

0

arrow
Type your comment here
Leave Comment
Ready to grow your game’s revenue?
Talk to us

We need your consent

We use cookies on this website to make your browsing experience better. By using the site you agree to our use of cookies.Learn more