Serpentine’s Embrace

1-1
34-1

Nathan Le Tallec

3D Artist

Introduction

Hello there! My name is Nathan Le Tallec. I’m a self-taught 3D artist from France, currently living in Quebec.

After completing a Master’s degree in Astrophysics, I discovered my passion for 3D modeling in late 2019, as I needed game assets for a small brick breaker game I was trying to make. It all started with the classic Blender Donut tutorial by Blender Guru on YouTube, and it is now my main hobby.

I am now looking for opportunities to work in the video game industry and turn this passion into fuel for a professional career.

Goal

The objective of this project was to push my limits in non-procedural texturing inside Substance 3D Painter and create a highly realistic and unique katana while still keeping it game-ready. My expectations changed multiple times, and I found myself going further than initially planned.

Understanding the fundamentals and how/why things work is something I always strive for, as this is, in my opinion, the best way to evolve and deliver top-quality assets and, to an extent, to excel in anything in life.

For this reason, I watched YouTube tutorials on how to wrap the handle (Tsukamaki), how to make the scabbard rope (Sageo), and went on websites about katanas.

I also took the opportunity to learn Substance 3D Designer for a specific material and even recreated a katana stand (Katanakake) to enhance the presentation.

2-1
3-1
4-1

Software & Details

These are the five software I used:

  • Blender (high poly, low poly, UV unwrapping)
  • Marmoset (baking, rendering)
  • Substance 3D Designer (handle wrap material)
  • Substance 3D Painter (texturing)
  • Photoshop (alpha editing)

For this article, we will discuss some of the interesting parts that were challenging or worth mentioning. These will be presented in each section in chronological order but independently from each other. I’ll also add the Japanese terms for katana parts to provide extra context (hopefully, I got them right!).

Additionally, I created a time-lapse video showing the full process of making the katana.

References

For this step, I gathered anything that looked unique and interesting to the eye. At this point, I’m not yet sure about the final direction, but it will come together naturally.

5-1

Modelling

About the High Polys and the Low Polys

Throughout the modeling process, I used a method that I really enjoy and which yields great results with minimal effort and low computational power. Here is an example of how it works.

  • We start by modeling the piece with very little geometry, just the key features, and we tag the important edges with bevel weight and crease (set to 1).
6-1

Then, we add three modifiers:

  1. Subdivision ModifierEnable “Use Creases.” This will densify and smooth curved surfaces while preserving flat surfaces and the overall silhouette. Generally, one iteration is enough, but for extra geometry on the low poly, you can use two iterations.
  2. Bevel ModifierUse 2 segments, set the profile to 1, and the limit method to “Weight.” This creates results similar to adding two holding edge loops on each side. Using the “Percent” offset type prevents bevel clamping where geometry is dense. If discrepancies arise, adjust the bevel weight value for the affected edges.
  3. Another Subdivision ModifierIncrease the count to 3 or 4. This generates the final shape of the high poly without using creases.

When creating the low poly, remove the second subdivision, the bevel modifier, and apply the first subdivision. If chamfers are desired instead of sharp corners, set the bevel modifier to 1 segment and apply it.

7_01
8_01
9_01
10-1
11-1

Blockout

The blockout process is straightforward. I generally like to start with the simplest and largest shapes, as it visually shows progress and quickly eliminates “blank canvas syndrome.” For this project, I began with the blade, using a reference image for the cross-section.

Credits: Swords of Northshire

12-1
13-1

The remaining pieces follow naturally. The dimensions were adjusted a bit later, specifically the length of the blade, which, in my opinion, looked much better with a bit more length and aligned better with another reference.

For the modeling process, there are three pieces worth discussing: the handle (Tsuka), the guard (Tsuba), and the scabbard rope (Sageo).

Handle (Tsuka)
Shark Skin

After examining the material inside the handle (Samegawa, which is shark or stingray skin), I decided to use my geometry nodes knowledge for two reasons: better control over the distribution of the “pebbles”, and because it’s fun!

We could use a Voronoi texture and make some tweaks to reproduce it directly in Substance Painter. However, Voronoi textures give flat junctions, which I didn’t want.

Other combinations of textures could also work, but at this point, I felt that using nodes was much more convenient.

The node setup is extremely simple, though I can understand that it’s not everyone’s cup of tea.

Without going into too much detail, the “Poisson Disk” distribution is all we need to avoid overlap. I added some variation to the scale of the spheres just to make it more interesting (we still get a little bit of overlap because of the random scaling, but this is totally fine here).

14-1
15
16-1
17-1

Once we are done with the settings, we can apply the modifier (after keeping a backup as a safety net) and move some of the spheres manually to improve the distribution, as the node setup is not perfect.

Note that we will overlap the two sides in the UV map to save space, as we cannot see both sides at the same time, so we can focus on just one side.

18-1

Handle Wrap

For this part, we start by creating a cylindrical piece to replicate the top and bottom parts of the wrap.

We can then cut it in half, remove the horizontal middle loops, and offset them so that the right loop of the top part and the left loop of the bottom part are in the same plane.

19-1

We then need to join them back with a twist in the middle. This part took me a bit of time to get right. It all made sense once I realized that the middle edge loop was actually vertical (see the red arrow in the image).

After that, it was just a matter of joining it to the top and bottom meshes with some extra loops.

This part was also easier to work with a subdivision modifier activated in edit mode, as the twist is a significant change in a small volume and allows us to work with fewer edge loops.

20-1

Once the first loop is completed, we can add two mirror modifiers to obtain the final mesh composed of two double loops.

We then apply the first mirror modifier and edit the mesh manually to make one loop go over the other using proportional editing with the “connected only” option enabled.

21-1

Once this is achieved, we can add an array modifier and a curve modifier to create the handle wrap in its final form (for now).

This way, if we change anything about the handle, we can simply edit the settings of the modifiers or adjust the position of the curve.

22-1

Now, if you look closely at the reference, you’ll notice that the twist actually bulges out, which is an important detail that enhances the look of the wrap.

You know the saying: It’s all in the details!

I would like to thank my Discord friend Bruno Fonseca, who pointed this out during our conversation about katanas!

ArtStation Link: https://www.artstation.com/brunogf13

23-1
24-1

After finishing both the high poly and low poly models, I realized that I wanted to make the handle wrap as realistic as possible. This meant ditching the symmetry and creating a proper wrap.

Naturally, I turned to YouTube and watched a tutorial on how to wrap a katana handle:

To achieve the new objective, we simply need to break the symmetry and model the endings of the wrap located at the pommel of the handle (Kashira).

Fixing the symmetry is done by splitting all the meshes and sliding half of them by one iteration to the left or right. Since we applied the modifiers first, we must adjust them manually, as the handle shape is not linear.

25-1

The endings of the wrap require a bit more care, as it’s a mess of noodles. We start by creating the shape with a curve and some bevel extrusion. For now, we just follow the tutorial and extrude the rope to match the intended look, but loosely.

We will tighten the geometry later on.

26-2

Once the rope is completed, we add some extrusion on top of the bevel to widen the rope and match the junctions.

27-1

The key now is to iteratively twist each curve point and move them toward their final position.

We can also reduce the radius of some points where it makes sense for the rope to be more constrained.

28-1

Now that the entire handle wrap is completed, we can start UV unwrapping it.

I use ZenUV for this part and UVPackmaster 3 Pro for the packing. For the loops, we can simply add a seam along one of the sides and one at the bottom, then use the quadrify function in ZenUV.

This function works best when the mesh consists only of quads. For this reason, we’ll simplify the mesh after the UV unwrapping. This gives us flat, perfect rectangles for the UV shells.

As you can see, there is some stretching (yellow colors), but this is actually fine, as it’s located at the twist. In fact, I found this feature interesting, as it, paired with a proper texture, would give the impression of tension and constraint.

I decided to keep it like this, even though in the reference it doesn’t stretch as much.

29-1

Next, we can simplify the geometry in places where it’s not needed.

I chose to keep most of the details around the twist, as removing them would affect the silhouette too much.

30-1

We can remove the faces inside the model, as they won’t be seen.

This is where it made sense to unwrap before removing these faces, as the quadrify function would break otherwise.

31-1
32-1

To prepare for the bake, we need to split the meshes into separate pieces, as overlapping or very close geometry could be problematic.

I chose to split the loops into four pieces and regroup them as four objects, keeping the number of objects relatively low. We will discuss the process in more detail in the scabbard rope section.

33-1

Another detail is the orientation of the loops. I made sure all the UV islands were aligned and in the same direction to make the texturing much simpler.

34

To optimize UV space, we can stack similar pieces together, though this prevents the use of noticeable wear or extra details in the texturing part.

ZenUV has a function to stack pieces automatically, but it wasn’t working very well in this case (I’ll blame my lack of knowledge with this addon, as it offers a ton of features).

I decided to stack them manually and then adjust all the edges to align perfectly using Machin3Tools’ align functions, another addon.

35
36

Here we can just box select similar lines and scale them down to zero on one axis to have perfect overlap.

37

Scabbard Rope (Sageo)

I started this piece by modeling the 6 loops around the scabbard, then took some extra time to study the reference. Initially, I planned to simplify and create something that would look similar but be physically inaccurate.

It turns out that, once again, I found myself watching a tutorial on how to tie a Sageo:

This piece was quite tedious to model, as the curve twist would get altered in several parts every time I adjusted the position or twist of the curve points.

I worked iteratively, slowly moving toward the final result and fixing the twist at each step to keep things in order.

To simplify the process, we can use a mirror modifier and focus only on one half. We then apply the modifier and use proportional editing to move one loop over the other in the middle section.

38
39
40

To create the low poly, we can remove edge loops that don’t contribute much to the silhouette.

Inevitably, this piece will account for a lot of triangles.

41

To prepare for the bake, we can follow the same process we used for the handle wrap: separate the mesh into smaller pieces that have no overlap or very close geometry.

One detail to remember is that while this process ensures a high-quality bake, we must also split the high poly at the same locations.

Once everything is split, we can UV unwrap all the pieces, straighten them, and quadrify everything. This ensures the texture will align properly across the entire mesh.

42

Here is a screenshot for context. I deconstructed the Sageo, though there’s no need for an exploded file to bake, as we can bake by object name.

43

Here is a time-lapse of the making of the Sageo (cut directly from the full time-lapse).

Guard (Tsuba)

The third piece is, in my opinion, the most important, as it is the centerpiece of the katana. I drew inspiration from a reference that features a snake coiling around the center.

I thought a double-headed snake, with one head at each end, would be an interesting choice.

It would not only be visually appealing but could also symbolize something meaningful, like the equilibrium of opposing forces.

I began by creating a spiral, mirroring it, and adding some bevel extrusion. This gave me the initial idea, but I quickly realized it would look underwhelming visually.

45
46

After experimenting with the grease pencil and testing various designs, I finally came up with a version I liked.

From there, it was a matter of iterating to make it as smooth and perfect as possible. To simplify the editing process, I created a linked duplicate to work on.

47
48
49

Once the curved section was complete, I modeled the head.

Since the snake would be symmetrical, I only needed to model one head, which could then be used for both ends.

50
51

To achieve symmetry, we simply select half of the model by splitting it down the middle and mirror it across two axes.

If the origin is correctly positioned, the mirrored parts will align perfectly, allowing us to merge them seamlessly.

52
53

Next, it’s just a matter of ensuring everything is properly aligned, that the edge loops make sense (each edge loop must connect to the same locations at both ends), and removing unnecessary geometry to optimize the model.

For the UV unwrapping, the heads are separated from the body, allowing us to use the quadrify function once again.

However, during the texturing phase, I realized it would have been easier to stitch the heads back to the ends rather than leaving them isolated.

54

Once the snake piece was completed, it felt visually unbalanced. The snake wrapped around three times on one side but only twice on the other.

This design would also be structurally weak in real life, with only two connection points to the guard’s centerpiece.

To address these issues, I made the centerpiece asymmetrical, which helped counterbalance the uneven look and added two additional connection points to make the structure more solid.

55

For the other parts of the katana, it was just about following references, with some personal touches added for uniqueness.

As for the katana stand, there’s not much to elaborate on in this section, as it’s a very simple mesh. We’ll cover it later during the texturing phase.

Here is the completed low poly model: the katana accounts for 53K triangles, while the stand consists of 9K triangles.

56
57

UVs Optimization

Now that we’ve completed the modeling phase, let’s dive into the UV mapping process.

The katana was unwrapped and packed into a single UV tile using the UVPackmaster 3 Pro addon with the advanced algorithm enabled.

Rotations were locked for multiple pieces to maintain uniform direction, especially for elements like the handle wrap and the scabbard rope.

58

To avoid splitting the scabbard and blade UV shells, I applied a custom scale multiplier in UVPackmaster, ensuring they fit as single pieces within the UV tile.

Additionally, I allocated a lower texel density for the inside of the scabbard.

The average texel density was approximately 86 pixels/cm (with 35 pixels/cm specifically for the blade and scabbard). This is a relatively high value, chosen intentionally to accommodate close-up shots of detailed textures for my portfolio.

59
60

For the stand, as it was primarily a secondary element, I didn’t spend much time optimizing its UV coverage.

61

Baking

To prepare for the bake, let’s not forget to triangulate the meshes. I typically apply a triangulate modifier to all the low poly parts so the process is automated.

It’s also helpful to do it this way to evaluate whether one triangulation algorithm produces better results (cylindrical parts often have a preferred method for example).

The baking process was done in Marmoset Toolbag. I baked the Normals at 16 bits for higher quality and to avoid the 8-bit dithered appearance in Substance Painter. For the other maps, 8 bits works perfectly fine.

62-1

Since the UV islands for the handle wrap are overlapping, we only need to bake one from each stack.

To account for this, I exported the high poly model by only including the necessary parts for baking.

63

Here’s the low poly preview after the bake. Given the complexity of the handle, I carefully ensured that every visible area baked correctly, particularly at the junctions where the handle wrap twists.

Thankfully, the first attempt resulted in a perfect bake, and I couldn’t be happier with the outcome. The same process was applied to the katana stand.

Now, let’s move on to the texturing phase and bring this katana to life!

64

Texturing
Katana Stand (Katanakake)

For the stand, I came across this design online.

The design was exceptionally unique, and I immediately knew I wanted to recreate it in 3D. Fortunately, the reference images provided show all sides of the stand in almost orthographic views, which made the modeling process straightforward.

These images also allowed me to extract the albedo textures easily, as the lighting in the photos is relatively uniform, with minimal reflections. With these, I essentially had everything I needed to proceed.

After downloading the images, we import them into Substance Painter. We then add a new layer, enter projection mode, and input the necessary image into the Color socket.

Once the image appears, we can paint it directly onto the model. Repeat this process for all the ornaments. To complete the rest of the model, we add a black uniform color as an additional sublayer.

65
66

To make use of the albedo texture, we create an anchor point directly under our layer.

Note that I also added a “Lines” paint layer to the stack to recreate the thin white lines at the top of the centerpiece (placed after the anchor, as this won’t have any height).

Next, we can refer to the anchor point in a fill layer to build a mask for our height data. I also set the metalness to 1 to enhance the colors, as the paintings could be made of gold or other metals, making it a realistic choice.

67

Now, we need to address the roughness and make the surface more visually appealing. I opted for a varnished look and used directional noise, as it pairs well with wood and matches the brushstrokes of a varnish layer.

The key was to ensure the noise direction matched each part of the stand. Since some pieces were rotated 90 degrees, I had to make two passes.

A low roughness value, combined with some height, achieves the desired effect.

68
69

For the gold speckles, I created them using a combination of noise patterns.

Then, I simply referenced the mask layer stack to a new fill layer for the height information, allowing independent editing of the values. The height effect is subtle but just enough for the look we want.

70

Next, we add grime, dust, fingerprints, and general wear.

71

For the plain gold surfaces, we can make them more visually interesting by adding user wear, such as vertical scratches along the surfaces and missing bits of material here and there.

To create the latter effect, I used a warp on top of a painted layer and then added a black outline to enhance the transition.

72
73
74
75
76

There’s an additional detail we can incorporate to add more depth to the texturing.

Currently, the black paint and gold material are at the same height level. Let’s change that.

We simply retrieve the gold layer masks, invert them, add a fill layer with a color value of 0.5, and apply a warp filter to introduce some imperfection. Notice how the junction between the black and gold now looks more dynamic and appealing.

77
78
79

After making some final tweaks and verifications, we achieve our final result.

80
81
82
83

I was really pleased with the result, especially since I didn’t have much experience with Substance Painter (this was only my third time texturing in SP).

With that completed, we can move on to the katana.

Handle Wrap (Tsuka Ito)

Before diving into the actual texturing, let’s make a detour through Substance Designer for the handle wrap material.

As a matter of fact, I had never used Substance Designer before this project.

As usual, when I pick up a new software or hobby, I turn to YouTube for tutorials.
This playlist from the official channel was exactly what I needed.

The goal for this material was to recreate the pattern from this reference.
Credits: https://www.istockphoto.com/portfolio/petesphography

84

As recommended in the tutorial, I started by building the height information and then used it to create the normal map and any other channels needed.

For the height information, I began by creating a rectangle, adding some blur, and using Transformation 2D nodes to build the base pattern.

Note that all of this could have been done with a single node, the “Weave Generator.” However, I chose to do it manually for a reason: practice, since this was my first Substance Designer project.

There were also settings I didn’t need in Substance Painter, but I included them anyway, just for the sake of practice.

As shown in the images, the texture ended up resembling more of a wicker basket. Nevertheless, I decided to proceed with that result and see how it looked in Substance Painter by adjusting the tiling and other settings.

At worst, we could always go back and tweak the parameters.

85
86
87

With all that done, I imported the material and applied it to the handle wrap. The first thing I noticed was that it, indeed, looked like wicker.

After trying multiple settings, I settled on a white color, as I preferred the look. At this point, I still wasn’t sure about the other materials.

88
89

During the texturing of the katana, I went back to the handle several times to experiment with different parameter combinations, as I wasn’t happy with how it looked.

At one point, while adjusting the tiling values, I accidentally set the Y value close to zero. To my surprise, it turned out to be a wonderful misclick, or as Bob Ross would say a “happy accident”.

90

There was still a problem, the texture was too smooth and perfect, and the UV distortion was more noticeable. To fix that, I re-used the custom material by applying it on top with just the normal channel activated.

A bit of wear, some extra roughness, and switching it back to white was all it took to finalize the handle wrap.

91
92
93

As seen in the finished result, the stretch-induced by the loop is a bit exaggerated in this case, but with this material, it actually works well and gives it an elastic touch.

A general rule I like to apply for materials is that if you can psychologically feel the texture and it feels the way it’s supposed to in real life, then it’s a great material!

Shark Skin (Samegawa)

This material was definitely one of the most anticipated, as I started it with geometry nodes. The bake turned out pretty well, but I still had to check if I could properly manipulate it with the baked maps.

As with most of the katana materials, I spent some time adjusting the colors to find the best combination.

It was only after building the material that I settled on pure black, as I wanted this material to complement (rather than overpower) the other parts of the katana. After all, it’s just the inside of the handle.

I started by applying a uniform black color.

94

If you look closely at the reference, you’ll notice that the “pebbles” all have an inner and outer color.

95

To replicate this, I used the Curvature generator, toggled “Use Micro Details”, and inputted the height map into the Height socket.

After some fine-tuning, I got this mask and used different color, height and roughness values than those from the base layer.

96
97

It was starting to look better, but it still needed something. To break the roundness and make the texture more organic, I used the same generator with the addition of a Mask Outline.

Then, I simply set the height to a higher value for this layer.

98
99

I finished this material by changing the background color to pitch black using another Curvature generator.

100
101

Pommel (Kashira)

For the pommel, I started with a galvanized filter on the base material.

During the creation of the katana, I knew I wanted to incorporate the “duality” theme, starting with the double-headed snake. Another idea that came up was to use two Koi carps arranged like the Yin-Yang. Placing them on the pommel made sense.

102
103
104

Blade (Toshin)

Initially, the blade was going to feature a damask pattern. I had the idea of mixing dark colors with a touch of lime green.

As I progressed, I got distracted by a funny, random patch that looked like a skull.

105

After some thought, I realized this damask pattern would cause too much visual clutter, even after polishing the texture.

So, I reverted to plain metal with a brushed linear finish. After all, less is more, right?

106

After adding a few layers of irregularities, I had a nice base layer for the blade.

107

One thing that makes the katana’s blade stand out is the Hamon, a visible pattern on the sharp edge created by the hardening process.

To recreate it, I added a gradient to the blade (doing this for both sides). During UV unwrapping, I straightened the UV shell by flattening the sharp side, which simplified the process of creating the Hamon.

Next, I created a new paint layer in the mask layer stack, set it to subtract, and manually painted it to get an uneven junction.

108
109
110

After that, it was just a matter of using a Mask Outline, adding some warp, and removing the extra parts by manually painting over them.

The warp filter is something I use frequently because it’s extremely easy to create interesting patterns from any shape.

111
112
113
114

To complete the blade, I added an engraving on one side. Since the blade is upside down, it’s important to ensure it is oriented correctly. This Kanji apparently means “Destiny”.

But someone told me it’s actually “Luck”. Either way, as long as it doesn’t mean “Toilet brush”, we’re fine!

115
116

Scabbard (Saya)

For the scabbard, I started with a plain black color.

I wanted a random pattern featuring ink-like stains, so my first thought was to use particle brushes. After trying many options, a combination worked well, which I obtained accidentally by selecting the “Ivy Branch” and “Ink Random” brushes (which are actually not particle brushes).

The key point to remember is that the Ivy Branch brush loads a grayscale map set to opacity, which, for each brush stroke, erases everything that isn’t part of the alpha.

This makes creating the base layer very easy, as I can just paint nonstop until the scabbard is covered with a suitable pattern.

Then, I used a warp filter to turn the shapes into stains, as originally intended.

117
118
119
120

I then proceeded to add multiple layers of variations and colors until the scabbard had a visually satisfying distribution of colors.

I also added a smoke-like pattern by subtracting an anchor point from its blurred and warped version.

121

Finally, I added some wear, and a layer of speckles, just because why not!

122
123

The scabbard was completed after adding the metallic part, which was faked using the height channel, and, of course, the inside, for which I chose cherrywood.

124

Scabbard Rope (Sageo)

This one was pretty straightforward, as all the heavy work was done upfront by unwrapping properly.

Since all my stripes were vertical and in the same direction, all I did was use the default “Fabric Nylon” material.

125

I then added linear gradients to hide the middle parts of the rope. It’s a tedious process, but very simple.

There might be a simpler and faster way to do it, but instead of spending time thinking about it, I preferred to take the direct approach. With this completed, I changed the color of the sides, making the Sageo much more interesting visually.

126
127

Finally, I added the metal end pieces and threw in some dirt and wear.

128

Guard (Tsuba)

Now let’s talk about the most important piece: the central part of the katana, the guard. This was definitely the most challenging to texture, as there’s a lot going on.

Let’s begin with the simpler pieces and leave the snake for later.

We start by adding metal with a brushed linear look and stamping our Koi carps on both sides.

129
130

Now, we’ll add the waves pattern to it. However, if we do so directly, the waves and the carps will conflict, resulting in too much detail at once.

To overcome this, we can simply use the carp masks, inflate them with a blur, and apply a levels layer.

Next, we import our seamless waves pattern and multiply the mask layer with our inflated carp mask. The cool thing here is that we get a smooth transition between the two.

131
132
133
134
135

With that done, let’s move on to the snake part. The material I used for the scales is from the community assets page of Substance Painter.

Once imported, I stamped it on the back of the snake. As you may notice, the scales are in only one direction, meaning one snake will have its scales inverted.

I chose to keep it this way to emphasize the concept of duality; otherwise, I could have made a smooth transition at the middle.

136
137

For the underside, the belly, I created a combination of gradients to mimic the underside of a real snake.

138
139

Now it’s time to properly color the scales.

During the project, I considered multiple combinations: lime/black, red/black, beige/black, and other variants.
The most obvious one is the black-and-white color combination that I ended up with.

140
141

As stated in the UV unwrapping section, the heads were separated from the body. This caused me some trouble when trying to make the textures match at the junctions.

First, I had to make sure the scale density was the same. Then, I offset the head’s materials to make the seam less visible. The seams are still noticeable if you know where to look, but since the transition is smooth, it’s totally fine!

142

Of course, snakes have eyes and nostrils, let’s add them. I didn’t model the mouths since they were exactly on the seam, and they’re not very noticeable.

In a way, the seams are already taking care of it by creating a sharp transition for the texture, which works well in this case.

Finally, I faded out the scale texture at the mouths with a gradient and masked it around the eyes.

143
144
145

Adding some irregularities, and the piece is looking great already!

146

The last thing we’re missing to really make it shine is… you guessed it right? Wear and dirt, exactly!

For this piece, everything was added during the texturing process, so we have lots of layers to work with. To make it easier to manage, I came up with a simple solution: I created an empty layer with a mask stack consisting of all the anchor points from each mask.

The good news is that we can individually adjust the settings for each anchor point to semi-manually place the dirt in the right locations.

Once this is done, we can just use the global anchor point and tweak it with, as usual, a warp filter and some blur.

147
148

And there we go!

149
150

Rendering

For the rendering part, I used Marmoset Toolbag. This was my first time using this software to render a project, as I had been rendering in Unreal Engine 5 for my recent projects. I was extremely happy with how simple it was to achieve great results in Marmoset!

For the lighting, I used a free HDRI from Polyhaven, combined with multiple lights to highlight important surfaces of the model that the HDRI didn’t pick up.

I wasn’t sure how to manage my scene properly, so to keep things organized, I placed each camera with its corresponding Sky and lighting setups above, so I could easily identify which Sky to use for a given camera.

Here are the settings I used for the cameras and the renderer.

151
152

Conclusion

I am extremely happy with how this project turned out. It was filled with technical challenges that helped me develop my skills and expand my horizons.

For some extra context, this project took me approximately 80 hours to complete over the course of 60 days. I captured 99 386 screenshots to create the time-lapse video. Let me reassure you, no harm was done to my Print Screen key, thanks to the software IrfanView!

Feel free to reach out to me on my ArtStation.
If you have any questions, I’d be more than happy to answer!

Now, what’s next for me?

All I know is that I’m more motivated than ever to create stunning pieces of art and collaborate with talented people on ambitious projects. This is just the beginning of my journey into this world, and there are still so many things I want to learn and explore.

To name a few: mastering ZBrush and Plasticity, becoming proficient at drawing and adding animation and VFX to my toolkit. With confidence, I can say I’ve found my purpose in life, and I’m thrilled knowing there’s so much more to come!

I would like to thank the Games Artist’s team for the opportunity to write this article.
Thank you very much for reading, I hope you enjoyed it!

153
154
155