Desert Crash Site – Full Environment Breakdown – Freddie Pitcher
Hi, I’m Freddie Pitcher and I’m an Environment & Lighting Artist at Sumo Digital. I started practicing 3D art nearly 10 years ago, having spent the last 5 years working professionally in the games and VR industries.
I started playing around with game engines in my teens, being a keen gamer even now, getting my hands on early game engines of the time seemed like a natural next step. Today I’d like to talk you through my latest project in Unreal Engine 4 (UE4), Desert Crash Site.
I began this project with the same goal as all of my personal projects: To challenge the skills I already have, whilst stepping out of my comfort zone and learning something new. I wanted to create something that was visually simple, yet elevate its detail and fidelity to a level I hadn’t achieve before.
Establishing the Scene
Like with any creative project, it begins with a Google search! Reference gathering is one of the most important stages for me and is something I’m always arduously doing. As a result, I constantly have an overabundance of ref material that must be kept organised!
It’s at this stage that I begin to build a clearer picture of what I have in my mind. As I’m able to look at the reference more clearly, I can remove/add/change the reference to better fit my vision. Slowly I begin to construct the main focal points of the environment, and with it, a rudimentary asset list!
In my reference hunt, I came across a news article from 2012 detailing the discovery of a perfectly preserved WWII Kittyhawk deep in the Sahara desert. I was immediately intrigued!
What was the pilot’s story? Did he survive? How did it crash? What was it doing out there?
These were the types of compelling narrative questions I wanted to integrate into my work. I had found the basis for my scene!
It’s at this stage of the project I begin to start blocking out the space in UE4. For this scene, I’m trying to get an idea of the environment scale, light direction, and most importantly, its composition.
I’ll set up some cameras early on and use them to help me frame the scene. Doing this helps maintain consistency and allows me to focus on key areas.
I’m using very basic assets here, stuff that I recycled from older projects. I’m not too bothered by their quality, as long as they generally resemble what I want them to be.
This is where I break the environment down into its component parts.
Building the Landscape
One of the earliest assets I started within this scene was the landscape, it also soon proved to be one of the largest and most complex!
Like I had done before with large tasks, I began to break the asset down into its component parts.
The sand dunes were built procedurally inside World Machine
It was a relatively simple graph setup using basic noise nodes. I stretched the noise nodes out along my chosen axis and then inverted the result.
The Expander node was very useful, using this node I was able to tighten the peaks of the sand dunes whilst smoothing out the crevasses. This provided some rippled sand dunes.
As a final touch, I would take the exported height map into Photoshop and add a gradient from left to right. This created a subtle slant to the sand dunes and would aid the composition of the scene.
My next challenge was to create a range of sand materials to be used on the landscape. All of the materials in this scene are 100% procedural and created with Substance Designer.
My first task was to analyze the reference and identify the most prominent materials.
My aim was to make sure that these main materials would blend seamlessly together, so consistency was important!
I started out by making the flat sand first. A big strength of Substance Designer is being able to reference material graphs inside of each other. By making the most basic sand first, I could then use it across all the other materials.
I’ll have to give a shout-out to Daniel Thiger here, I highly recommend his Substance Designer tutorials. Specifically, his Substance Fundamentals series and Rock Creation Technique series. These tutorials proved invaluable for creating the rock formations needed! You can find his stuff over on Gumroad: https://gumroad.com/dete
I began by building a base-graph that would create various rocks that I could use in future graphs. I would then naturally scatter them across the material, ensuring that size variation, colour and spacing was correct.
Finally, I would height-blend the sand material with the rock. Ensuring visual consistency across the sand & rock materials
UE4 Landscape Shader Setup
One of the key aspects that I loved seeing in the terrain work from games like Battlefield 1, was that the terrain would dynamically tessellate height information in the immediate area of the player. This produces a huge amount of environmental detail and really elevates the visual quality of the scene. It’s something I’ve always wanted to try for myself!
I wanted the Landscape Shader to achieve 3 things.
The Landscape Shader in this project has up to 9 unique material layers. In order to manage this amount of materials I utilised Material Functions inside UE4. This is a very similar way of working to Substance Designer, they allow me to reference graphs inside other graphs.
Each unique material would be its own Material Function and is referenced into the main landscape material as its own node.
The Height Mask is then blended with the Dynamic Tessellation. This can be achieved with the graph below.
Finally, to achieve the dynamic sparkling of the sand I recycled a Material Function from the UE4 Automotive Materials pack. This is free on the UE4 Marketplace.
This function was originally used to create a twinkling effect for car paint. Instead, I retrofitted it to create a sand sparkling effect!
Building the Rocks
The rocks in this scene were mostly hand-sculpted in ZBrush, with the exception of the extra-large cliffs.
I also created a blending material in UE4 that blended the terrain sand and rock together using Mesh Distance Fields. Very useful for covering up seams between the mesh and landscape geometry!
The Extra-large cliffs were a combination of World Machine and ZBrush. I first created a basic mountain graph in World Machine.
I imported this into ZBrush as a height map, sculpting in rock formations by hand, creating a hybrid of procedural erosion and hand sculpted rock.
Building the Aircraft
The aircraft I chose to be the centerpiece is a Douglas C-47 Skytrain. This aircraft is one of my favourite aircraft from the WWII era. It played a pivotal role in multiple campaigns during WWII and is an easily recognisable aircraft from that period.
Both the high and low poly versions were modelled in Maya. As there is so much information about this historic aircraft, it was easy to find detailed diagrams of the front, top and side views.
This helped a lot with blocking out and modelling the aircraft to scale.
To aid in the texturing process I used Substance Designer to create various metal panelling materials. These would form the base materials of the aircraft.
I imported these materials into Substance Painter, where I could apply them to various parts of the model.
Using Substance Painter I was able to add all the damage, weathering and storytelling I needed to the aircraft. As this was such a large asset I needed to be sure that the process I was doing was correct without too much time investment. This is why I chose to only texture the back tail-wing first. I used this section of the aircraft as a visual benchmark. Once I was happy with the overall look, I converted its layer setup into a Substance Painter Smart Material.
Using Smart Materials I could quickly transfer all the damage, weathering and detailing over to the rest of the aircraft. After that it was a simple case of adjusting the layers to fit with the new UVs and geometry.
Building the Foliage
Building the foliage was relatively straightforward. I drew up some silhouettes in Photoshop, making sure that I had a range of unique small, medium, large shapes.
I took this image into ZBrush and using an IMM spline brush I traced over the silhouettes. This quickly gave me a basic highpoly that I could bake down to a flat plane. In Maya, I cut the shapes out into their own alpha cards.
Using these alpha cards I then created a range of bushes and grass assets.
When it comes to dressing a scene I like to work in stages. I begin with the landscape and work up from there.
When dressing a natural scene I try to build assets into “pyramid” formations. This is where collections of assets form triangular shapes in the scene.
Doing it this way ensures that all the assets support each other visually.
At this point, I can use the cameras I setup at the start of the project to aid in the set dressing process.
This was a really ambitious project and required me to learn a lot of new skills along the way. I’m really proud of the final result!
Hopefully, this gave you a good insight into how I built this scene and has given you some ideas of your own!