logo80lv
Articlesclick_arrow
Research
Talentsclick_arrow
Events
Workshops
Aboutclick_arrow
profile_loginLogIn

Learn How To Create A Cozy Autumn Windmill Environment With UE5's PCG

Louis-Alexandre Louchard shared a Windmill by the Lake project breakdown, explaining how a cozy peaceful rural environment inspired by Elden Ring's Windmill Village was set with Unreal Engine 5's latest tools like PCG, Nanite, and Lumen.

Introduction

Greetings, my name is Louis-Alexandre Louchard. I live in Montreal where I work for Reflector Entertainment, a Bandai Namco studio, as a Senior Environment Artist. I had a passion for art for as long as I remember! I loved to draw a lot as a child, that's why I decided to study in Beaux-Arts de Paris. In 2017, 3D art entered my life, and since then it has become my passion.

I first started my career in 2019 as a vehicle artist at Aptitude X, an outstanding studio specializing in hard-surface modeling. Then I ranked up to lead artist, where I had the chance to work on projects like Microsoft Flight Simulator by Microsoft, WRC9 and 10 by Kylotonn, Monopoly Tycoon by Nvizzio, and Asphalt 9: Legends by Gameloft. Since my main job was to do props, I always wanted to push myself into new challenges and become an environment artist.

That's why I went to work as an environment artist for Beenox, an Activision studio, where I worked on Call of Duty. I worked on many different modes, from Warzone to single-player and multiplayer maps. It was an awesome experience, but I wanted to work on games that were more towards RPG gameplay, which are the type of games I prefer to play. So that's why I ended up working at Reflector Entertainment as a Senior Environment Artist on their first IP, Unknown 9: Awakening.

Windmill by the Lake

For my project Windmill by the Lake, I got inspired by the Windmill Village from Elden Ring. I wanted to do a scene for my portfolio that got more of a cozy vibe and was towards the fall season.

I first gathered a lot of references for my main props: the windmill with the little house next to it. I knew I wanted to do a windmill/house that looked well-maintained and with solid materials, so I checked references for those made of stone and wood. For the rest of the composition, I knew that I would go for a pine forest vibe with a little water pod, just to emphasize the cozy vibe.

Modeling & Sculpting

Before I even start working with simple shapes to do my composition, I choose two or three words that I want to translate through my scene. It can be a subject or an emotion, anything that helps me to get on the right track very early in the process of creating an environment.

This method can also be very beneficial in a production situation, where it makes it easy for you to establish what vision the artistic director has for a specific scene, and what they want to create emotionally for the player. In this case, my words were tranquility, cozy, and fall.

With these words in mind, I started to place very simple shapes to get an overall feeling of what the scene would look like. I love modeling the composition with simple shapes since it helps me to get a nice result very fast and to easily iterate if needed. It's also a great time for me to place the camera that I will use for the main shot. This way, it's easy to change things if the composition doesn't suit my initial words, and to compare different results with the same point of view. This also allows me to use composition rules like the golden ratio to verify that the composition is well-balanced.

When I am happy with the composition in general, I like to do a first pass on the landscape. I prefer doing this early, since many times in my past projects it gave me inspiration for future-level art.

I knew that for this project, one of my focuses was to do the windmill as the hero props and use third-party resources to do good-level art for the rest of the scene. That's why I jumped right next to the creation of this one.

I chose to do the whole house and windmill as one mesh in Blender. On one side, since it was a personal project, I didn't mind having a house without modularity, and on another side, it's better performance-wise since it costs more draw calls to have many modular parts assemble in Unreal Engine compared to a big mesh that only calls textures once.

I next decided to create a wood beams kit that I would use to kitbash all around the house to make the carpentry. I first made the blockouts in Blender with the good metrics that fitted with the house. Then, I sculpted them in ZBrush, using a combination of alphas for the surface details and the brush Trim Dynamic with a square alpha to give nice damage on the edges. I didn't really care about the topology, so I decided to decimate them into a pretty low polycount to be easy to unwrap but also to keep the nice shapes.

When the kit was done, it was only a matter of directly kitbashing the wood beams all around the house/windmill. Again, I didn't really care that much about performance for this project. However, if I wanted to be the more optimized as possible, I could have done this part in Blender directly and exported it as one mesh all the house with the beams to get way fewer draw calls. With a very similar workflow to the wood kit, I made a mesh for the window, the shutters, and the door.

I knew that I would need to use trim sheets to achieve more unique shapes of wood beams. So, I first started by dividing a plane in Blender by the number of shapes and patterns that I would need. I knew I needed some planks, half-beams, and beam variations. At the time, I also considered using stone blocks, so that's why it was in my trim sheet. When the plane was correctly divided, I made simple shapes in 3D to bring those in ZBrush and sculpt them the same way I did with the wood beams kit. The important thing to remember when doing a trim sheet is to make sure that every edge has depth information such as damage or a marked bevel, since you will bake it only from the front view. Otherwise, you'll get some normal information when you do the bake.

The last step for the modeling part was to add more topology to the house and windmill because I wanted to test a shader where I would use displacement, vertex paint, and Nanite at the same time. I simply added a Subdivision Surface modifier on my mesh with a "simple" type of subdivision algorithm to keep all my shapes without any deformation. 

As my goal was more on the level art side, the rest of the assets/foliage in the scene was done with the good use of Megascans and other assets from Epic Games' projects. One thing I really wanted to use to help me do the forest faster in this one was the PCG tool from Unreal Engine. My needs were very simple, so I did a quick graph with very few nodes but enough control for me to play with the number of assets, variations, size, offset, etc. After this, it was only a matter of placing different graphs around the scene to fit with the composition.

Since the windmill/house was made of one mesh, I directly distributed all the UVs and material in Blender. I first applied all the different materials to the elements that I wanted, like distributing ID on elements in 3ds Max. I wanted to keep the best pixel ratio while still being optimized as I would do in production, so I decided to use only tilables and trim sheet for the asset, with a total of three: one for the stone, one for the roof tiles, and one for the wood trim sheet. To unwrap my mesh correctly and to keep a good pixel ratio, I simply unwrapped the faces with the albedo of each texture showing so I was able to see in real-time the size of the tiles or stones for example.

As for my texturing workflow, I love to do most of my textures in Substance 3D Painter. For my wood beams kit, after doing a quick normal baking in Marmoset Toolbag, I jumped in 3D Painter to start my texturing. To achieve a realistic result, I decided to apply a realistic wood texture as a solid base. This way, it was fast and easy to quickly adjust the color values to my needs with an HSL Perceptive filter.

After this, I started to play around with some different colors and smart masks to add more variations to the cavities, edges, etc. The same process was used for my metal brackets. When I was happy with the result, I did a little trick that I love to use when I want to achieve realism and get an extra micro detail. On top of all the layers, I put a fill layer without any properties checked on, then added a sharpen filter where I put values of around 0.5, just enough to get some crispy details. Also, I put the layer in passthrough mode to see the result. The same workflow was used for the texturing of the windows, the door, and the shutters, as well as for the trim sheets.

For the house and windmill, I wanted to try displacement with vertex paint, but using Nanite to keep nice performances. I used a material that a tech art colleague made for me, where I was able to add in my material instance different textures to paint as red, green, or blue channels, and to get control on the displacement intensity, contrast between the channels, tint, etc.

Since Nanite doesn't support the vertex paint yet, I had to use a special workflow to get around this. This is also why I chose to bring the house/windmill as one mesh directly for Blender since doing the house with a modular kit wouldn't work.

Here's why: because Nanite doesn't support VP, I needed to make sure that Nanite was enabled on the source mesh in the content browser. After, I was able to go paint my mesh the way I wanted. When I was happy with the result, I had to apply the vertex information to the mesh. It's very important to understand that this will bake the information directly on the source mesh, so let's say you have a modular wall, if you were to do some damage with VP, applying the information would apply the change on every mesh in your scene, which is often not what we want.

You can either duplicate the mesh to get different painted versions if it's a path you still want to take. To come back to my project, after I applied the VP information, it was time to go back to the mesh, enable Nanite support, and hit the Apply changes button. This would also turn the displacement on. This way, I was able to get a nice custom house with vertex paint, displacement, and Nanite support.

Lighting

When I was mostly done with my level art pass, it was time for me to do a lighting pass. Following my three words, I wanted a cozy mood and a calm atmosphere. This said, I chose to do a sunset lighting, where the sun would shine on the windmill to put the hero props in value and leave a place to add some fog planes to create depth in my different points of view, plus a nice mood overall.

For the lighting, since I wanted to achieve something realistic and push my knowledge of Lumen, I followed an awesome tutorial made by the talented lighting artist Karim Abou Shousha.

When I was happy with the lighting, I used the EasyFog Blueprint made by William Faucher to add fog to make my windmill stand out of the background and to add some morning fog that is on top of the water in the morning, etc.

Conclusion

In conclusion, this project was an awesome experience to pursue my learning of Unreal Engine's latest tools like PCG, Nanite, and Lumen. Here's a list of things that I recommend to every artist:

  1. Keep yourself up to date with the new tools. Unreal Engine is constantly putting out there some new tools that, in my opinion, will drastically change the workflow we are used to. Those tools, if well used, can be very efficient in terms of quality and pace.
  2. Don't hesitate to ask for external feedback. Constructive feedback from your fellow artist friends is always a good thing to gather when making an environment. Since they have their own opinions, they will often see things that might improve and elevate the quality of your final scene.
  3. Set your objectives at the very beginning. It's so easy to get lost for months in an environment if you do everything. It might be what you want to achieve and it's an awesome challenge, but keep in mind that it's okay to use external resources if you want to focus on specific elements.

Thanks so much to 80 Level for this amazing opportunity to spotlight my work. I really hope that this article might help some of you guys or just even motivate you to create awesome art!

Louis-Alexandre Louchard, Senior Environment Artist

Interview conducted by Gloria Levine

Join discussion

Comments 0

    You might also like

    We need your consent

    We use cookies on this website to make your browsing experience better. By using the site you agree to our use of cookies.Learn more