Ten Years Later
Inspired by a series of eerie city paintings, we’re taking a trip through Thibault Moitel’s stunning environment piece, Ten Years Later. We cover topics such as Thibault’s creative process and inspirations, capturing the feeling and atmosphere of a real-life painting, working smartly and efficiently with a limited set of materials and textures, using decals to break repetition and create variation, working with modular kits and loads more!
Intro
Hello everyone! I'm Thibault, a 3D environment artist from Lyon. I currently work at Kylotonn, a video game studio specializing in car racing. Before that, I attended a school in northern France, and during that time, I also did two internships, one at Larian and the other at Ubisoft Bordeaux.
I've been a gamer myself for a very long time; I remember clearly the old family computer with emulators my father installed. I wasn't really sure what to do in high school—maybe architecture? But after a discovery week in a company, I wasn't so sure anymore. I loved drawing, but what to do with that? At this moment, it strikes me, I remember that during my childhood I lived just across from Ankama, a famous French video game studio. Then a few years later, I wanted to join the industry! Creating the video games I liked was obviously a good idea, so here I am!
Scene Inspiration
Stefan Hoenerloh's work has a distressing, captivating, and timeless quality. The repetitiveness of the shapes and materials fascinated me. How did he manage to make this homogeneous ensemble convey an emotion? Why do I want to keep looking for the small crack in the wall? When did the civilization that built these walls stop? Are there still people hiding there? That's what interested me, the fact that with simple architectural elements and a striking setting, one could imagine a whole lore behind the painting!
Scene Inspiration - Paintings by Stefan Hoenerloh
Creating A Scene From A Painting
I think you have to find the emotion that the painting seeks to convey. Even before a particular technique, you have to understand the intention behind the painting in order to transcribe it or try to, and make your own interpretation. As soon as I saw Hoenerloh's work, the architecture and the work surrounding it were definitely what struck me, and as an environment artist, it made the subject even more appealing to me. You have to zoom in... what level of detail does the artist put into his work? Does he detail each brick, or does he suggest them? These are all ways that we will explore later in the materials we will use.
Using Interpretation Of The Painting To Influence The Scene
I always kept the paintings in my field of vision while working. If I had any doubts, I could spend 10 minutes checking if a particular detail was present. In my interpretation:
There are "technological" elements, such as lamps, etc, so we can estimate that we are at least in the 1920s/30s
Surely there is life somewhere, but we have to look for it
Those are two very small indications, but they at least provide architectural elements to base ourselves on, and my interpretation of life also explains the birds we see in the background in the 3D rendering. This is classic in many scenes, but it adds movement and creates a little doubt about "but if I go further, what will I find?"
Emulating The Feeling & Atmosphere Of A Painting
My first goal was to have a functional base material. My very first research, which you can see here, is only based on that. I had a few modules I previously created but I first wanted to have the most accurate base to feel confident for the next steps of building the scene.
Afterwards I used one of the paintings that I considered the most “simple to make” to do my first atmosphere tests and to have a 3D render that roughly matches what I wanted. This shot is the only reproduction of Hoenerloh's paintings that I kept in the final scene. Yes, those paintings are a global inspiration but I wanted to recreate one to put myself in the right mood and on the right track for the rest of my project.
First atmosphere test
Reference Image
From that it was a very classic process, first I worked on the big shapes, then medium-sized details (window frame, edge decal), added a bit of noise in the corners with small pebbles on the ground, grids, etc, decals, then FX and the lighting pass.
Concrete Material
I'd like to warn you that I'm not an expert myself when it comes to materials. Most of my solutions are the products of YouTube videos (our best friend for finding resources) that allowed me to create a material adapted to my needs. With that said, I can already tell you what you won't find in my material: Any blending using Height, the reason being that I have textures that have little or no Height so I didn't see the point. Any tessellation. I tested it and hated it. The result was too grungy for my taste and created interpenetration issues that I decided to avoid by removing all of that.
Now let's get down to business. Before even diving into the details of a material, don't hesitate to create some Material Functions. This will make it easier for you to understand your graphs. I used several of them myself but I could have done more, especially for texture management but that will be part of a future optimization of my material. To show you the essentials, here's the one that allows me to have control over the vertex paint masks. The maths taking place before the "mask 1 exponent" would be hard to explain because it's a solution I found in a UE Forums' post. What I can tell you is that this allowed me to blend my world noises with vertex paint and give them more punch.
The second one that I used in almost all my materials is my world's gradient. I wanted a global one on the albedo since it can be found in my main reference and settles the models in the world. I found that it really marked the polluted side of the bottom of the buildings.
This is a very classic gradient, however the control of it goes through a MaterialParameterCollection. I had never used these before but it's actually quite simple. After creating some scalar parameters in the collection, we can reference them in our material, which saved me from going back to 15 individual materials for each modification. Since I reuse my gradients function in different materials, I have control over all of them directly inside the collection.
For the overall construction of the material here is the graph but don't worry, we’ll go into more details.
The important thing to remember is that the left part is where I put all my different maps and what I need to control them. On the right, we will assemble the graph.
This is one of the four different "materials" that make up the entire concrete. Personally, all my reroute nodes have got the same colour per material to help me navigate. Otherwise, it's very classic. The Height map is still there but ultimately it won't be used. I plan to reintegrate it soon for new projects. For the noises, I only use three throughout the materials.
I created those in Substance Designer in a very simple way. I bought a brush pack that I input into a tile sampler.
Next, I'll use the material function I created earlier to start blending the first three mats: mat 1: corresponding to the base, mat 2: corresponding to the Red channel, and mat 3: corresponding to the Green channel. Logically the Blue channel remains free for me to add a new layer of detail which I didn't need for this scene.
After that, I added my worlds noises (world noise 1 and 2 work the same way), which only impact the base colour to give it that little extra touch.
Of course, I made sure to add my worlds gradient material function to my colours. Then, since I used my 3rd noise globally to blend mat 4, I have to go through a MaterialAttributes node.
Challenges Of Using A Single Material
The two real challenges are:
Pattern repetition to avoid textures tiling everywhere and thus keep away from drawing the viewer to unwanted areas. In our case, the solution was four different concrete mats and several world’s noises. This may seem overwhelming, but in a setting where the mat makes up 90% of the scene, it's a blessing in disguise.
Visual boredom: indeed, solutions must be found, whether directly in the texture or in the composition, to avoid this quickly tedious aspect. This is also where the lighting comes in, of course, but so do our decals! Those two things break up the monotony of the visual.
Working With Multiple Camera Angles & Workflow Optimization
In my opinion, this is where my preparatory work on the main material helped me a lot. I was able to identify very quickly how I was going to produce my modules. I wanted to save time knowing that I would have quite a collection of modules. Those preparations spared me the majority of the unwrapping work, which can either be interesting or terrible depending on the person, by using a lot of world-aligned materials.
Material Usage
While working shot by shot, I didn't beat myself to have a fully coherent scene. Once the curtain is drawn, you quickly see that everything wouldn't be usable if you had control of the camera. It saved me a lot of unnecessary work.
I also copied/pasted a lot of the same buildings. Why change it once it’s assembled in a blueprint? We see here, for example, that the green building is almost EVERYWHERE. The idea is to add a little decal or a small chimney. Something that will make people think "Oh, no, it's different".
Last piece of advice: focus on what's important. Cornices are ultimately quite lacking in detail, but why would I do it? No one is going to look there, so I might as well focus on what is most functional.
Edge Wear Decals
The decals are made in Designer using a technique somewhat similar to how I made my own noises.
Edge Wear Decals with UVs
Once the UVs are neatly placed in Blender, we need to tackle the major problem: how do you add diversity. Well, simply by using the position of the object to move our texture, here on the vertical axis, and by allowing said texture to move on 8 possible options (or any number of edge decals that you determine on your texture). See our graph. Our goal is/was to add diversity in the left and bottom right parts of it.
So here we have the part that will manage those step-by-step movements. I’ll admit that my solution is probably not optimal. One of my main difficulties here was dealing with an offset that was created on the texture. The solution lies in the remap. The further I went into the world, the less precise I was about how my texture was shifting, so I decided to work with very small numbers. To manage the number of steps, which can vary depending on the texture in question, simply change the number in B in the Divide node.
Now for the bottom left part, nothing could be simpler. It's exactly the same noise system that comes to lerp with our opacity. This way, we can control the extent of presence and variations of our edge decals.
Choosing Camera Shots
Weirdly enough, I noticed after choosing my shots that I usually pick them with a natural setting. I guess it was pure coincidence but maybe I really wanted to paint, haha. Jokes aside, I always look for shots where you can imagine what happens next. What could you find around the corner? I also looked for patterns, shapes, etc. that create an unsettling impression. This is one of my favourite ones because you'll find everything I described. You can also see the work behind each element: the textures, the small accessories, the decals. And you can imagine what's happening off-screen. Like, can I take those stairs and discover something else?
Lighting Setup
First of all a big thank you to my friend Philémon Caron, who helped me set up my basic scene correctly. Besides that, I’ll have to say that my lighting was based on "everything for the sake of beauty, no matter how coherent it is or not”. So I plead guilty, as you can see in this shot: I didn't use directional lighting to keep full control of my lights positions.
One of the first guidelines was a gradient on the buildings, which we can see especially in the grey picture but I wanted the base of my lighting to accentuate the height. This really is soaking us in this heavy atmosphere as we travel through those areas.
To summarize the exact use of the lamps, I have three main lamps in red, spotlights specifically, which I used to create my main gradients and for the ground (which we see mostly in the video). Then I have secondary lamps in blue, which I used to highlight different parts of the image or to enhance certain areas that were too dark, mostly the two at the bottom of the picture. Then the green ones, which are purely to increase the edge highlights, so the back and foregrounds stand out more. The perks of working one shot at a time in my case, were that I could keep this very painterly approach where I could detail each element of the visual without worrying about whether a player would see the deception or not; I was having fun and doing what pleased my eye.
Creating Variation With A Muted Colour Palette
Honestly, the colours came pretty quickly, at least the green tones were there from the start. The brownish purple is there for the base, complementary colours. But… it wasn't punchy enough. Too basic, maybe? Haha!
After a few variations I got... lost. Like with this predominantly red version. I received feedback from friends who told me they preferred the greenish tones from before. So I decided to listen to them and even go for a bolder choice by opting for a dominant green (with subtle touches of yellow).
The greener tone was much more consistent with the narrative because in a context of a city without vegetation there's something strange about it. Radiation? Disease? The colour, at least here, serves the lore of the scene.
Decals
The decals were really fun to make. I wanted to try something… different. I took some photos of a building near my workplace. I don't know why but I wanted to experiment. I've always loved photogrammetry, so why not use my own photos to create decals?
Reference Photo
Next I created my own little node in Substance Designer to insert the desired decals and create an atlas. For the leak decal, I used a variation of the created nodes but instead of my own images I incorporated basic noise from Substance Designer, like the grunge map 005.
Decal Atlas
There are gaps in the atlas, which is intentional, as I used the same system from the edge decals. When you move the buildings, the decals change. Same buildings, different results. As with the gap in the atlas, sometimes there's a decal, sometimes not.
Same building with different decals
Adding Unevenness & Breaking 90 Degree Angles
For me, this serves three purposes in the case of this scene:
The narrative of the city slowly collapsing on itself, the weight of the buildings, the ages, the fact that there’s no one left to take care of the city.
It refers to the painting aspect, the slightly more brush-like side that doesn't allow for perfect lines like a ruler (even if some people manage it).
We tend to like imperfections, it’s what makes the scene more organic. This one was already based on repetition, fairly straight shapes; being able to break up this almost too perfect side was essential, otherwise, when looking at the original image, we would all have that little "something is missing, but I don't know what, it's too identical."
Vertex Painting in Blender vs Unreal
In my particular case, painting my vertex paint in Blender was the most reasonable solution. Indeed, I had initially planned to create a huge city, perhaps even generate it in PCG; I wasn't sure yet. So, I wanted to offer myself the opportunity to avoid painting the various vertex paint effects, building by building.
With Blender, the data was already stored in the FBX, so I no longer had to worry about it.
Considerations When Planning The Modular Kit
As mentioned before, I originally wanted a much, much bigger scene. I was planning on an entire city, but after giving it some serious thought, I narrowed the scope considerably to prioritise more important things to me, such as having a personal life.
But then I thought "how can I do more with less?" which is mainly reflected in the number of textures of course, but also in my choice of UVs. Wanting to spend as little time as possible on it, I reduced the UV time as much as possible by having:
The majority of my UVs being made in the most basic way, for the sake of having them but with the texture done in World Space.
The rest being just straight strips to be quickly placed on trims.
Textures
Also, I especially wanted to create similar shapes, for unity and the almost oddly too similar appearance of the scene. While adding these small variations, I spared myself from the visual boredom I talked about previously. A window top and a rounded side help a lot with that. And the final goal was to create something tall! I wanted people to be a little overwhelmed by the architecture, to not always see the tops of buildings, and for that the simple shapes of the pillars helped me a lot. They hide small flaws but also direct the eye quite easily.
Composition
Nothing magical behind the composition of the shots. Start with the basics: our dear thirds of the image, then try to bring interesting elements to look at. Even if said element may not be EXACTLY on a third but it’ll still give more authenticity to the visual.
Also, use the different elements to frame the image; we see that I have several that are emerging, a general one in yellow, and one in blue, created by the structure of the building. Then obviously, my arches that draw the eye to parts of the scene I specifically have to work on, add a small lamp there, move my sky to have more interesting clouds, etc.
Following that, light also plays a key role in guiding the eye and making the different planes stand out. In black and white we immediately see the upper right section pop from the rest.
Finally, the main lines of the picture clearly help guide the viewer to what are, for me, the two most important points: the building in the blue frame and the upper right section.
Biggest Interest In Games Development
The discussions, the interactions. It's silly to say but I couldn't be a solo developer. Much respect to them but I love teamwork. Of course the environment is my specialty and I love talking about it, seeing everything that revolves around it, the lighting and also level design since it's one of the professions we have to work with a lot. At the moment I am in a car-specialized video game studio and we are learning a lot but I would like to work on a genre that particularly attracts me. To create a story for players to experience in which we could address themes, have a deep artistic reflection, etc.
Modular Kit
Areas To Grow As An Artist
I know I really need to focus on vegetation; it's one of my weaknesses, because whether personally or professionally, I haven't taken the time or had the opportunity to really develop the corresponding techniques. I think the next scene I’ll do will probably focus a little bit more on this aspect. Another aspect, and the most important to me, is composition, the eye that goes with it and choosing the right colour palette. In the end, more than technique (which is obviously important), this is what makes a piece truly shine!
Inspiration
Like many people, I regularly browse ArtStation to find concepts that inspire me. However I've noticed that what tends to inspire me the most are paintings in general and so I love wandering around museums looking for ideas. There are a lot of paintings that don't have an environment as their main theme, whether natural or man-made, which simply require the eye of an Environment Artist to showcase this famous setting. I was recently in Montpellier and the Fabre Museum is full of gems! I also love looking at figurine painting channels like Squidmar because they have a way of treating metals and light in particular. That can be extremely useful when researching a style for a project.
Feedback
I mainly look towards co-workers and friends. I hang out on a few Discords like Exp Points and I post there from time to time. But it's true that I prefer to have direct verbal interaction for feedback.
Highlight
The scene in this article is, in my opinion, my most interesting work but I'm also very happy with the results I was able to achieve on my Gallic Ceremonial Helmet piece, particularly the black and white shots, which really speak to me. Also, even though it's older and more common, I still love my Medical Items piece. It appeared in an Adobe showcase for GDC 2024, which made me particularly proud!
Additional Advice
Don't be afraid of not understanding everything. I'm not a techie but there's always another way to do things. Start again, don't focus too much on optimization at the beginning, especially for your personal projects. It's obviously very important but start by learning how to use nodes and understand how they interact. Explore the forums, watch old videos, not just the shiny new tutorials. And always ask for feedback. Without it you won't progress as quickly as you can with others ideas and points of view.
Future Work
I'm not the most productive when it comes to portfolio pieces because I experiment too much and therefore don't focus enough on creating a scene. But with this one, I think I found a good personal balance that allows me to be more efficient at finishing a personal project! I really want to continue pushing myself, particularly on composition and so I hope to be able to offer a new scene soon that will surprise you.
Outro
This is my very first post and I'm truly grateful to be able to write it here! After a failed test for a new position, I absolutely wanted to create a scene that people would enjoy and this post makes me confident that I might have succeeded! Thank you all! Please feel free to contact me if you have any further questions or if you'd like to collaborate with me. I'd be happy to answer them!