Davide Grimani told us about the workflow behind the Ghost Town project, shared how the scene was blocked out, and explained how Unreal Engine 5's Lumen was used to set up lighting for the Japanese environment.
Hello! I'm Davide, I currently work as a Lighting Artist at Reply Game Studios. I have always been passionate about video games since I was a child starting with Sega Master System. Right after I finished art school, I enrolled in a game art school, where I learned about modeling, sculpting, and Unreal Engine 4 (at the time it was UE4.1).
My first work experience was in an architecture office for archviz and it was during this experience that I fell in love with the use of light. I learned that the thoughtful use of light and color can breathe life into your scene and help communicate many different feelings.
After this experience, I did a couple of years in an independent Italian studio where I worked both as an environment and as a lighting artist, and in a game, I had much more creative freedom to experiment, unlike the archviz.
But the experience that I consider the most formative of my career (for now) was being hired by Reply Game Studios as a Principal Lighting Artist. Finally, I had the opportunity to work mainly in the role I preferred and was able to put all the effort into it.
The game I've been working on for the last three years, Soulstice, recently came out, and it's been very important for my personal growth.
Using Unreal Engine 5
Unreal Engine 5 was certainly the most "game-changing" tool I've ever put my hand on, the ability to digest millions of polygons and have almost perfect dynamic lighting is undoubtedly one of the most important things that have happened to the gaming industry (and not only).
In particular, the 5.1 patch was essential to correct some imperfections that Nanite and Lumen had in the previous patch.
The Nanite foliage is incredible, I overloaded the scene with foliage of any kind, with high-resolution textures and models, and everything ran very smoothly.
Absolutely noteworthy things for me are additional controls on the fog that give even more creative freedom.
The Ghost Town Project
The Ghost Town comes directly from my deepest and most sincere passion for Japan, and my idealization of it. Moreover, Japanese culture has been fundamental to my artistic and personal growth, since I was a kid.
Recently I saw a 1993 Japanese animated film, Ninja Scroll. The incredible atmosphere of that film gave me great inspiration, so I jumped on Pinterest and started looking at photos of villages and ancient cities, and I started to get a much better idea of what I wanted to do.
I understood that I wanted to give the idea of an abandoned village, perhaps due to an unpleasant event such as a war or an epidemic, which is sometimes used by wayfarers who need to rest or shelter from the rain, where nature has now taken over, and thanks to the splendid colors of Japanese trees make it an environment as beautiful as it is disturbing.
Blocking Out and Working with Assets
The first thing I did when opened Unreal was sketching a landscape very quickly and do a quick block out with simple gray cubes to set up the street I wanted to reproduce.
Right from the beginning, I set up the camera. For me the idea of getting a key shot as soon as possible is very important and setting it at the beginning helps a lot for me for the final result.
For the landscape, I downloaded 4 different materials from the Quixel Bridge library and created a landscape material. I put a bit of effort into it because primarily I wanted to render the detail of the landscape using the virtual textures to obtain a height map to replicate a displacement.
Although the result was very pleasant, I understood that I had to enrich it a lot with assets and that the landscape would only be the support base.
To create the houses, I mixed Megascans assets and materials with simple and fast meshes made directly using the model tool inside Unreal: wooden planks, windows, and walls.
I used the Displace deformer to get extremely detailed assets with directly created geometry thanks to the high-quality Quixel textures.
After assembling 3 different building variants, I started replacing the various blockout cubes with the buildings, and finally, the scene started to look more like I was imagining it.
After I finished setting up the level blockout I opened up Quixel Bridge, and started downloading everything I thought fit the setting.
Moreover, a lot of inspiration for the environment came while I was browsing through the Megascans catalog. There are incredible packs that fit the Japanese mood I was looking for – starting from the roofs (that I found essential for the success of this scene), up to statues, walls, and tombstones.
I took a lot of assets from different packs but the ones I found most useful by far were the Broadleaf Forest which contained any asset I wanted to make a wet and leafy undergrowth, the Feudal Japan Historical Pack, and the Megascans packs of trees on the Unreal Engin Marketplace.
Now comes the fun part, placing every asset previously downloaded on the scene, I didn't even make any changes to the material to make the assets blend better between them, because it already worked perfectly.
After putting the leaves on the ground the scene started to get some color. It was the perfect moment for me to experiment with the lights and color.
I used a lot of natural light in this scene, the only artificial light was the little lamp on the right placed there to attract the eye to focus on the near details and assets.
The only lights I used outside them are little spots to make some highlights to emphasize the humidity of the scene and the shapes of the buildings.
After that, I took every single plant I'd downloaded from Bridge, and with a simple click, I made it a Nanite Foliage. I started to cover up everything with little clovers, on the buildings to emphasize the abandoned status of the town and on the ground, mixed with some grass and mushrooms to create a good undergrowth.
The advantage of Megascans is that it is extremely user-friendly and in two clicks, you have an incredible quality asset ready to use. It's a very useful tool for any digital artist.
After downloading all the assets on Nanite quality, I had to make a slight tweak to the base color of each asset to match the general coloring of the scene and I did this directly by changing the hue shift from the "base color" texture into Unreal.
While inside the material, I was able to modify all the roughness of the scene to give a much wetter look to the scene.
In general, I like to experiment in my work. For example, I start rotating the sunlight randomly to see if intriguing situations are created. I simply find some angles that inspire me a lot and I start adjusting the colors and intensities of the lights to match the mood I imagine.
Thanks to Lumen you also have an immediate response to what you are doing, with the quality that once was achieved with a very long static build, so the process is minimized almost exclusively to the artist's creativity and saves a lot of time.
This is why I proposed different moods because it was very easy and fast to present them. To make my work much easier and have all the lights under control, I used the handy environment light mixer, a really useful tool, especially for people like me who tend to get lost between outliners and folders.
My workflow is very simple, as soon as I have a sketch of the scene that I can experiment with, I always start by rotating the sunlight looking for a detail or a particular cut of light or shadow that convinces me, and I start setting up the scene with fog, atmosphere, and light of the sky.
The moment I have convincing neutral lighting, I start thinking about the feeling I want to communicate
in the case of the main shot (without variations) I wanted to give a very humid and disturbing mood but at the same time very lush thanks to the bright colors.
So I started working on individual lights trying to figure out which color could be the best choice. Since the sky was very cloudy I decided to give the directional light a very large source radius to soften the shadows a lot.
Fog and mists play a fundamental role in lighting and without them, I would never have been able to give that sense of humidity to the scene. They help to separate the layers and create a lot more depth to the scene. I used a very simple fog card that I'm bringing with me for a very long time, you can find it in the Unreal Learning section – Blueprints.
The peculiarity of Lumen is precisely the global illumination in real-time which gives extreme realism to the scene, it takes very little to set up in the project settings and the result is surprising, however, I feel I have just scratched the surface and I still have a lot to learn.
On the other hand, this scene helped me as it was a reason to study. I feel that every scene I work on has always something new to teach me.
Setting Up Lighting Scenarios
Setting up lighting scenarios was actually very simple, after having found the right starting point it's a moment to get some variations. For example for the sunset, it was enough for me to set the main directional to a very low temperature, around 2000 degrees kelvin, and a very light color and contrast tweak with the post process and that's it!
For the night scene on the contrary I raised the temperature of the directional a lot, around 9500 degrees kelvin, I lowered the skylight, and after giving it a nice midnight blue color I made some slight changes to the post process here too.
The mood that I refer to as "Kurosawa" is actually nothing more than my "contrast check" because there is nothing better than a nice black-and-white scene to see if there are enough contrasts in your map.
Furthermore, in this project I experimented and had a lot of fun with LUTs, to get more control over colors and contrasts they are truly lifesavers. It consists of a small texture that if modified and added to the post process can drastically change the look of the scene.
The workflow for creating a LUT is very simple, the Unreal Engine documentation provides a basic texture ready to edit.
I take a screenshot of my keyframe image and the LUT to Photoshop, modify the colors/contrasts/brightness of the image to match what I have in my mind, and export the modified LUT from Photoshop with all the color correction applied to it, add it to the post process in the appropriate section and the color correction I made in Photoshop can automatically find it in Unreal.
It's a very useful tool that I only use at the end to make slight changes – it allows great creative freedom and above all, it is very fun to experiment with it.
It took me about ten days to finish the project, working on it for a few hours a day – it was an extremely relaxing project. I used a lot of YouTube playlists like "Japanese music with rain sound effects" to enter the mood and slowly the scene came out.
I didn't encounter any particular complexities because more or less everything I've worked on was in my comfort zone except for the Nanite Foliage but it was enough to read the patch documentation a bit to understand how I had to move.
Probably, the most complicated thing, for me, was to approach the modeling phase directly from Unreal with the model tool, but I'm sure that with practice I can only improve.
One piece of advice I'd like to give to all aspiring artists using Unreal is to try not to ignore lighting as a subject of study, it takes very little to positively change a scene, it greatly enhances the work made on assets, and above all, it can communicate great emotions.