Florian Elie shared the workflow behind the Immerged Temple and Forest Pathway project, discussed the challenges of constructing a large-scale ancient megastructure, and gave some tips for optimizing lighting and post-processing techniques.
In case you missed it
You may found these article interesting
Hi, my name is Florian Elie, I'm 27 years old and I work at Shiro Games as a Lead Environment Artist. I started working in 3D in 2017 at Aslak Studio, then I worked at Tap4Fun Paris and I joined Shiro in 2020 to work on Wartales!
The Immerged Temple and Forest Pathway Project
I had the opportunity to participate in an 80 Level interview last year for my last personal project, The Temple Jar. Since then, I have continued to work on Wartales until its official release on April 12th. It's a realistic style project on a custom engine.
I like to work on more stylized projects in my free time and continue to practice Unreal Engine. So, I decided to start a top-down puzzle/exploration game prototype in my free time. The aim is to have a personal project in parallel to my work at Shiro where I can experiment, change my style, and have fun. I think it's important for an artist to have a creative free zone to practice and experiment.
Being a big fan of architecture and games where the narrative through the environment is paramount, I started from the same influences as my previous project to be able to reuse the foundations previously laid and push them further. The mood board has therefore become more refined. I also drew a lot of inspiration from the photographic work of Sven Fennema and his book Melancholia.
Planning the Initial Composition
Building a top-down scene with a 360 camera is different from building a fixed-angle scene. So I took the time to work on a grey block-level design in Unreal. The goal was to find the different scales and to make sure the movement was correct. The famous 3C (camera character controller).
As I have in mind to make a personal game based on exploration, puzzles, and architecture, I first wanted to test two different areas, the first one in the middle of nature (forest pathway) and a temple area with some platforming. So I built a grey block-level design that I exported from unreal to be able to work on it in 3ds Max properly at scale 1.
This feature of Unreal is really useful as it allows you to work on the base of the level directly in 3D software to be able to reimport it directly into Unreal and limit the draw calls.
For this project, I mainly use 3ds Max for modeling and UV mapping, Speedtree for vegetation creation, Substance 3D Painter for texturing, ZBrush for sculpting, Marmoset for baking, and Unreal Engine for integration. As my goal is to create a large-scale ancient megastructure, like in The Last Guardian, for example, I have to work smart and combine diversity and reuse. For that, I first tried to create a lot of different wall and stone patterns to make textures and meshes and to have the most modular workflow possible.
The goal is simple: get the level design in grey block from Unreal and dress it up with all these patterns directly in 3ds Max, assign them the IDs corresponding to my materials, and everything arrives at the right place with the right textures in Unreal. This allows me to have control over both the level design and the artistic part of the scene. Then, I just have to tweak my materials in Substance 3D Designer, and the whole level updates automatically – very handy! I then reused some assets from my old project, The Temple Jar, to dress the scene with more detail directly in Unreal.
3ds Max is a really handy software for this kind of workflow since the modifiers allow you to work efficiently with big architectural structures. There are a lot of architectural tutorials on YouTube that are really useful. The Sweep modifier allows you to get a spline in the 3D model. Then, you just have to map it with the straightener and apply the different trim sheets created in Substance 3D Designer. I pushed the concept a little further by combining Adobe Illustrator and 3ds Max. I created different patterns in Illustrator, saving them as an Illustrator 8 file. 3ds Max retrieves them as a spline, allowing me to create large surfaces very easily and modify them directly on the spline. This is a very efficient workflow for this kind of project.
Another very useful tip is the shell modifier. Assigning a spline to it allows you to create a complex column in one click. By adding the UV Map modifier, this column is mapped directly and ready for tiling materials. It takes about 2 minutes from scratch from the beginning of the modeling to the integration in Unreal.
For the vegetation, I reused the bases laid in my previous project, but with the camera being different, I made some modifications. For the grass, the goal was to create two different densities. A first one for the big green spaces, a second one for the edges of the road. As the camera is top-down, I worked on the general aspect of the rendering, not for close up.
I used a very useful feature of Speedtree, the billboard atlas. I started with a simple atlas of grass blades that I made in Photoshop and Substance 3D Designer. First, I worked on a high-poly version of my grass in Speedtree, aiming to create a dense and organic mesh. By deactivating the LODs of this mesh and checking "billboard only" in the export, Speedtree creates an atlas of this grass with several different views. Then, you just have to create a second Speedtree project using this atlas as a texture, and you have a very optimized and dense grass mesh with the rendering you want! So, I integrated two different meshes in Unreal to achieve a natural look.
Next, I made a second, thinner version that will be painted only on the edges of the path to achieve a very organic and natural appearance.
For the material/shader, I reused and tweaked the one I made in my previous project, which I spoke about in my last 80 Level interview. You can check it out here.
Using a simple blade of grass and playing with the curves of the leaf scale, I created tall grass inspired by Bloodborne without having to create a specific alpha or a new material. This was very useful in adding diversity while avoiding draw calls again.
The surface and texturing work is one of the most important things in this project because it's what will bring diversity and the general mood of the scene. The environment storytelling is one of the most interesting aspects of environment art, I think. That's why I wanted to base my work on FromSoftware and Fumito Ueda's style. I chose to make a mix between tiling textures for the speed of workflow and meshes because they will cast shadows and break the "blocky" appearance of tileable textures.
With a height blend material, I combined my textures with a moss material that I made to be able to use vertex paint in Unreal and bring some wear and vegetation where I want it. I then added some parallax on my tileable textures in Unreal to bring more detail and depth.
For example, here is a bridge I made with modular parts and tileable materials:
Assembling the Scene
Assembling the scene is the most fun part for me. Once the base level was integrated into Unreal, I came to dress up the level with the Unreal foliage tool and place the smaller props to add some atmosphere and naturalness to the scene. I used two different approaches. One is more natural since it is a free zone in the forest which represents the more open areas of my project and the other one is in the temple where the level design is more marked and the character's path is more "corridor".
The first one is simpler since it's enough to play with variations of heights of grounds, rocks, and vegetation while bringing some touches of props of ruin to guide the character and obtain an organic result. The second one is a bit more complex because you have to "erase" the level design and try to bring a natural side to this place without losing the character's path.
One of the main challenges for this kind of project is to manage to bring a gigantic side without distorting the scales. So it's important to think beforehand to have at least three levels of detail that are sufficient to not lose the player. For example, a macro level of detail for large ensembles and large structures, an intermediate level for platforms, and a smaller level adapted to the scale of the character. For the latter, I played a lot with the vegetation. This is the rule of thirds, the same principle as in photography and concept.
For the final rendering, I took a lot of references from photographs. I love the atmosphere that can be found in the forest for example. I find that it works very well with a top-down camera. Since we can't see the sky, we have to suggest it with different very interesting elements such as god rays or volumetric fog.
To be able to work efficiently on the lighting and the post process, it is necessary to have followed a correct PBR chart. It is important to work regularly on the scene in buffer Unlit and roughness to see if there are no aberrations or differences between the different elements. Otherwise, some elements will be too bright, too dark, or too saturated. This can lead to trying to make up for these mistakes with the post-processing and the rendering will be greatly diminished.
So I put a volumetric fog, a directional light, and post-processing. To accentuate the atmosphere in some strategic places, I added volumetric fogs following this tutorial.
While playing Elden Ring, I loved the atmosphere brought to the eternal cities Nokron and Nokstella thanks to the particles floating in the air, and I was inspired to bring this touch to my project. I followed this tutorial on snow particles that I adapted to create this dust.
The main challenge for me was to work on this project in my free time and to try to find tricks to save a maximum of time. To find the motivation to move forward a little bit every night, and not to get discouraged when you lose a whole session trying something that doesn't work for example. My next step will be to learn Houdini to make my workflow as procedural as possible. If I had one piece of advice to give to someone who is just starting out, it would be to persevere, not to get discouraged! A failure is never lost, it allows you to learn! Work always pays off in the end.
You may find these articles interesting