logo80lv
Articlesclick_arrow
Research
Talentsclick_arrow
Events
Workshops
Aboutclick_arrow
profile_login
Log in
0
Save
Copy Link
Share

Modeling & Texturing a 3D Chinatown Environment

Klara Jug explained how she created the Chinatown Street project, going in-depth on the texturing pipeline and showing the working process behind the decals.

Introduction

Hello! My name is Klara Jug, and I'm an Environment Art student at PlaygroundSquad, Sweden. Both art and games have been a big part of my life since I was a little kid, which led me to pursue game art today! However, as a kid, I did not know what game art meant or that it even existed, so I just kept drawing, honing my art skills by learning fine art, graphic design, and playing games.

At one point, I happened to take a Game Design course in Malmö, Sweden, where I got a chance to work with others and make 3D models for our games, and that experience was so fun that I just wanted to keep learning and make more things!

I then started learning 3D here at Playgroundsquad, where I got to learn modeling in both Maya and Blender. I've since taken part in two school game projects and a few game jams. While I'm eager to make more things and learn, I am also happy to share with you my second personal project at PSQ!

This project started as a personal school project in which I wanted to explore and learn how to make modular buildings and learn more about Substance 3D Designer. I was drawn to the concept art of these buildings made by Mel Mo titled THE EYE AND THE EYE - pt. 1.

Initially, my idea was to make the entire scene shown in the concept. I fell in love with the colors and framing of everything and loved the idea of making a playable level with so much life and story. However, considering that I only had 4 weeks to make everything, I realised it is probably better to focus on the building and its modularity. I also wanted to focus on learning Designer and develop my skills in Unreal, so sticking to a specific part made sense.

Going into this project, I wanted to stay as true to the concept as possible while making it game-ready. I mainly used the concepts provided by the concept artist while also gathering references for specific materials like brick and wood. A big part of my references were also models of modular pieces made by artists such as Bo Cheng and Mateusz Kozica.

Chinatown Street

Whenever I start a new project, I take time to break down what the scene is made up of. In this case, it was figuring out what can and cannot be modular. While things like lanterns and signs would have to be unique, things like beams and pipes could be made in smaller parts and reused everywhere.

During this stage, I also take time to plan out my textures. I noticed pretty early on that the storefronts all use the same materials but in different colors, so instead of making a separate material for each colorway, I decided to work in grayscale. This type of workflow allows me to apply the color in Unreal Engine.

Once I had everything figured out on paper, I would move to modeling and blocking out directly in Unreal. As I am already following a reference, I don't have to worry about making the composition myself, but instead have to focus on making sure the blockout matches the concept, but is also being interesting from multiple angles, as my scene is 3D.

This means I spent a lot of time going back and forth, making sure everything lines up to the concept and is the correct scale for the player, until I felt everything was visually balanced. This part was harder than expected, as things would look good and interesting from one angle but flat from others. But once I figured everything out, I took my blockout and exported it!

Blender and Maya were my main software for modeling, where I refined my blockout. I mainly focused on modeling and refining the stores themselves first by using the blockout I made in Unreal Engine. As I knew that I would be mainly using trim sheets and tiling textures, I focused on making low-poly to mid-poly assets.

A huge help during this stage was a Blender plugin called "Measure It," which allowed me to mark two vertices and see the distance between them. This tool was especially useful when making modular wall and roof pieces, as I had to be exact.

During this stage, I would go back and forth between Unreal and Blender a lot, tweaking things and making sure everything feels alright. I used the same naming convention in both Unreal and Blender, so exporting and testing things was quick and easy.

Materials and Texturing

The majority of the materials in this scene were made in Substance 3D Designer. I followed a bunch of tutorials from creators such as Kalyson and Poly Doorway on YouTube and adjusted them to suit my needs and my environment more. I also went through a bunch of articles here on 80 Level, reading how people made their materials and tried to use some of the techniques they used.

In contrast to most people, I have decided to make my materials in grayscale, like I mentioned before. This was due to my having to use the same materials but in different colors over the whole scene, and instead of making unique materials for everything, I wanted to try and optimise as much as possible. To keep a cohesive look across my textures, I tried to make the level of detail and the noises I use the same.

However, for my trim sheet, I wanted to experiment with Substance 3D Designer and different workflows. Instead of making it all in Substance 3D Designer from scratch, I sculpted all the surfaces in ZBrush, baked them in Substance 3D Painter, and later took that information into Substance 3D Designer, where I assembled my trim sheets and played around with the colors and textures.

This way of doing things had both pros and cons, as I easily had all the Height information with bevels and ridges of more complex shapes I wanted. However, I now had a harder time using nodes for edge selection, as they would select more than I wanted them to. I had to use the nodes creatively and often mask parts to get the desired effect.

Once I had begun making my materials, I also needed to make my master material in Unreal, which allowed me to test my materials in the engine as I was making them. Here I got some help from my friend and classmate Petru Marinoiu.

I decided to make a triplanar material to ensure all of the textures I made tile perfectly and have a consistent texel density on the building meshes, and to learn something new, even if it is a bit expensive.

Firstly, we took the world position and combined the x, y, and z axes two at a time (xy,xz,yz) to get projected UVs onto the meshes. Then we used the PixelNormalWS to mask out the projected UVs, applied said UVs to the textures, and then we just combined all of them. We repeated this process twice to allow for height-based vertex painting.

In addition to my master material being triplanar, I made sure to have perimeters for things such as color, tiling, saturation, and value. This gives me more control when working with all the different materials.

I decided to vertex paint as I wanted to try and learn something new as well as break up the repeating brick and tile patterns happening everywhere, giving the overall picture more balance and visual interest. Additionally, to save on texture space, I have decided to include the Height Maps in my ORM textures.

I had an additional master material with a similar setup, minus the triplanar projection for the unique assets. Those assets were, for example, the storefronts, roof pieces, and props, as I wanted more control of the texture.

The storefronts, for example, use the tiling textures and a trim sheet, while the signs and more unique assets were put in an atlas. Generally, all of the props made were low-mid poly, so retopology wasn't necessary, especially since the more blocky look aided the stylised look of the piece. The props themselves were textured in Substance 3D Painter, where I baked the low-poly onto the low-poly.

However, even with vertex painting, my scene looked a bit bland and flat: To try and break up the surfaces and add interest, I made a bunch of plain and normal decals. These decals were either painted in Photoshop or sculpted in ZBrush: The sculpted decals were then later baked and edited in Substance 3D Painter.

I followed a tutorial by DiNusty on setting up mesh decals for corners and figured out I could use the same technique for making normal decals. I had to bake the normal information onto a plane and, using the opacity mask, paint out what I didn't want. These decals were mainly surface damage and scratches, with some being streaks of paint.

Conclusion

To tie everything up in the end, I used the color grading tools in Unreal for the post-processing. It was my first time using them, and it was a lot of fun! I mainly just played around with the colors, trying to see what the tool is capable of and what each part affects. I then worked closely with the concept to adjust the colors of shadows and highlights.

For example, I noticed that the concept had warmer shadows than the default shadows in Unreal. During this process, I also learnt that those tiny tweaks of shadows and highlights go a long way, even if you might want to add or create a bigger contrast at first.

However, those bigger changes can create more disharmony and hide the things you made instead of making them shine more. For example, while it isn't super noticeable, the picture on the right is slightly more saturated, while the picture on the left is more balanced.

As part of a school project, I completed this project in 4 weeks. And while I had fun and learnt a lot, there were, of course, some challenges. One of the main challenges I had, in particular, was how to make sure everything modular worked properly as intended.

While it made sense where to put pivots on assets such as walls, things like windows, doors, and pipes confused me. I remember trying out a bunch of different ways and testing out what feels the most natural, as well as asking my teachers.

However, one of the hardest things to deal with in this project was the imposter syndrome. At times, my to-do list seemed endless, and nothing I did seemed to work or look good. Even when others would compliment it, I could still not see what they were seeing. I just had to continue working and trust the process.

And while I was excited to see the final project, what kept me going was the support from my amazing teachers and classmates. They saw the bigger picture and what I was able to achieve while I was stuck, their encouragement motivated me to see it through to the end. The more I worked and listened to their feedback and encouragement, the less I felt stuck.

My biggest advice, therefore, is to be kind to yourself. We are all gonna have days when things are harder, and it's okay to feel stuck and to dislike your work. Just know that it is all part of the process and that you will succeed if you keep working and learning!

Additionally, don't be scared to ask for feedback and support! Oftentimes, we get too focused on small details to see the bigger picture, so having a pair of fresh eyes is very helpful. That feedback can take your project further!

Lastly, I would like to thank all my amazing teachers and classmates for believing in me and who helping bring out the best in me. Thank you to my family and loved ones who keep on supporting me and sending me their love. And of course, thank you, 80 Level, for giving me this opportunity to share my project with everyone!

And that's about it for me! Thank you for reading. I hope it is useful for someone. If anyone has any questions, don't be scared to send me a message on ArtStation or LinkedIn!

Klara Jug, 3D Environment Artist

Interview conducted by Amber Rutherford

Ready to grow your game’s revenue?
Talk to us

Comments

0

arrow
Leave Comment
Ready to grow your game’s revenue?
Talk to us

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