What I love the most about my job is game development. I like to produce data that is both visually appealing and efficient production-wise. That’s why I decided to work on this release with a practical mindset.
Usually, Substance Source signature releases are composed of 15 materials, divided into 3 categories, to create a big thematic range, which is great. This didn’t match my goal though, so I chose to use this budget of 15 materials to create one single architectural kit. Anyway, this is roughly the amount of materials I use for asset kits at work, so it’s perfect.
For the Art Direction, as I’m already working on stylized materials at the moment, I chose to go realistic with a slight idealization.
With that in mind, I started listing topics and tricks I wanted to share: tileables, atlases, alpha decals, material blending, sculpt in Substance Designer, height map from ZBrush, layering, presets, and SVGs, to list a few.
For the structure, I wanted to create a courtyard to control the space like an interior, while still getting the benefit of natural light flowing in.
So, I thought about different types of architecture that would offer this setup while keeping a good range of materials in terms of variety. I hesitated between Shanghai Shikumen houses, Spanish Colonial Cartagena houses, or even the Vietnamese tomb of Tự Đức, as I love those setups.
I wanted something gritty but colorful (and I’m a big Uncharted 3 fan) so I ended up picking Columbia’s Cartagena. Cartagena courtyards also had something my two other subjects didn’t have: a wide variety of tropical plants and flowers that would complete my composition in terms of shapes and colors.
Research, Idealization, and Identification
Once I had my theme sorted, I started some research, trying to not limit myself to specific materials yet.
To choose is to renounce, so I only pick essential images for my boards. I tend to sort interesting images by size on my boards, so if an image is the main reference, it’s going to be the biggest one. Here, my main reference is on the right.
Once all those references were sorted out, I drew a quick 2D rough draft, including all the elements I wanted in the scene, and idealizing my setup. The point was not to reproduce one specific courtyard, but to create one that would feels like it belongs in Cartagena.
Idealization isn’t about creating something cartoonish or clean. It means making artistic choices that will create a final result that is stronger visually.
This rough draft can be drawn, like I did, or can be done by photo-bashing or in 3D; the idea is just to create a visual roadmap.
With the help of that rough, I made a quick visual listing of 15 materials, to see what I’d need to create.
I also translated it into an actual listing to keep track of my production and be sure that everything was coming in time and at the same level of quality.
Building the Scene
The very first step I took was to mockup the courtyard with simple shapes. I also made a quick first draft on some major materials to have a good picture of the scene.
It gave me a good idea of the materials I would need to produce from scratch, and those which could come from material variations.
To save a bit of time, I worked with a modular mindset to be able to work on smaller pieces, and create instances in Unreal Engine. This also allowed me to reuse some assets. This way, I could create a variety of setups with just a few meshes, instead of a giant one for the structure.
I tried to work on the materials and the scene at the same time, and tweak the modeling or the textures depending on my needs, and make them fit together.
Thanks to all my research and planning, the production was pretty straightforward. I worked from big to small, trying to avoid noisy details, and keep things readable at every step.
While pushing the scene, idealization is constant, especially in composition.
Those artistic choices come from many visual levers. While there are dozens of rules of composition, here are the main ones I had in mind for my main shot.
When I reached half of the scene in terms of production, I was also able to more clearly identify the eye circulation and where I should put more effort. I chose the assets my eyes were focusing on each time I looked at the shot, and sculpt those in ZBrush before texturing in Substance Painter.
Fun fact: having a fixed point of view is a big time saver. In game production, even if you can walk in the 3D space at your own pace, it’s often a succession of reveals or beauty shots, exactly like in cinema when a camera is moving. Here, I was able to focus on specific elements of the context.
That’s why I created a quick material to fill the fountain. While it was a material created in an hour, I didn’t need anything more than color stains and the right specular response. I added some clutter on top, and voilà.
From Generic to Specific
For environment or material creation, time is probably the biggest constraint. Dispatching it is crucial; that’s why understanding eye circulation or points of interest can be so useful down the line. It will help you decide what can be done with simple atlases and tileable materials. You can play with your UVs and blend materials or create more specific assets (baked assets).
Here are examples made entirely with atlases and tileable materials. While the finishing touches will always be more detailed with specific texturing on a baked asset, this kind of setup can come in handy for simple pieces or secondary assets.
Tileable asset builds with trims will have an extra layer of detail if you add a blend to the mix. This blend can be mortar, stucco, paint, dirt, pealing coating, cracks, humidity, moss, and so on. What you choose will be driven by your design.
For the scene, aside from the dithering decals, I created two kinds of materials: material functions (basically textures plugged directly into the result node of the material), and material instances. Those instances derive from a master material, which allows me to blend four different materials depending on the intersections of two height or grunge maps. Building a master material and instancing it is another way to save time, especially during the iteration phase.
On the other hand, for the few assets I identified, I went with the classic workflow: ZBrush, baking, texturing in Substance Painter. For me, it’s the most efficient way to create assets with specific textures. It allowed me to test the new auto-unwrap feature of Substance Painter and, honestly, I like it a lot!
For material layering, I really like to use Substance Painter, as it has both procedural and hand tools that you can visually tweak live. You can’t just drop a smart material and run away, but it really helps create a coherent start and save a bit of time again. Here, to end up with something coherent, I used the .sbsar file from my release and shared the result (a smart material) between the different assets.
Procedural and Versatile
In production, creating a large amount of data with constant quality is a challenge. In that matter, presets are a huge advantage to help you deliver. If you consider presets while working on your materials, you can build them to efficiently produce a wide variety of resources.
All my materials were built the same way:
– Height map first, from big to small shapes;
– then material layering built from masks driven by the height;
– and some homemade grunges and patterns.
Exposed parameters are supported by many engines, and that gave me the freedom to tweak and create the variations directly in Unreal Engine 4. For my scene, I created 8 variations of my plants, sometimes just to have a color variation or to create original scattered leaves. In the end, those textures are spread out between 6 materials, all coming from one .sbs file.
Materials with figurative designs, like the Cartouche, are pretty straightforward: you have to build them one height at a time. I tend to find simple and flat materials harder to produce, as you can’t play with strong shapes. For the Cartouche, the biggest challenge was to design pieces that would interact with each other correctly, no matter what preset the end user might choose.
Actually, this was the mindset behind every single material: whether you activate every element or not, the material has to work.
Even if it’s a bit more tedious than focusing on only one material, building a material with tweakable parameters in mind is really valuable down the line. It will allow you to dispatch and structure your .sbs file in a more efficient way.
Each setup structure and layering can be tweaked, helping you to reach the aging you are targeting. And then you just need to push to the level of the frequencies you want.
Something really interesting about the Substance Source materials is the level of optimization the team put in place for the end-user experience. Everything has to be smooth, and load fast, and this demands some very cool tricks that you can see in their materials. I definitely learned a lot in the process.
This signature release was a great project to work on, and I was really happy to do it and share my passion for game development. I hope it will give some insights to people and the inspiration to create some art on their own. There are still a huge amount of game art techniques and recipes that need to be shared, and I’m looking forward to sharing more of those in my next projects. I’ll give a shout out to the whole Substance Source team for this opportunity, and their professionalism; you rock!
Be sure to learn more about Vincent’s material creation workflow in our live stream on November 5:
All images courtesy of Vincent Dérozier.