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

How to Model & Texture a Pair of Dr. Martens Boots Using Blender

Bence Jancsik shared how they created a pair of Dr. Martens boots in 38 hours, discussing modeling and experimenting with the custom lighting.

Introduction

My name is Bence Jancsik, I'm a Hungarian, 3D hobbyist with a traditional and digital drawing background. I wanted to try out 3D because I had an interest in how video games are made. I started learning modeling seriously in 2023. I usually model characters (and don't finish them). I don't have much experience or notable contributions yet.

The Boots

I am working on a fan art project, and this character wears some no-name boots. This was a good opportunity to compare the skills I gained since my previous footwear model. I used the following programs: Blender, Substance 3D Painter, RizomUV, and Photoshop.

I read some cool modeling concepts and workflows on Polycount by FrankPolygon, and I wanted to try them out. I wanted to improve on my previous shoe model in every aspect. I gathered references from Pinterest and put them into PureRef.

I found that image with a cool charm hanging on the pull tag, and I knew I wanted to make that. I wanted to make more of a generic boot, with only a slight resemblance to a DOC 1460's forms. In hindsight, I should have used my own boots as a reference.

Modeling Process

I used Subdivision modeling for creating a low-poly model, then sculpted some details on the high-poly. I modeled the parts separately, based on their irl counterparts, or when it made the modeling process easier to have them separated. I poly modeled the basic outlines of the parts and then adjusted the forms with Subdivision and Bevel (with custom edge weights) modifiers ON.

The leather parts were modeled on a low-quality base sculpt. One eyelet was made with the Screw modifier, then duplicated and snapped it on the subdivided surface. The lace and stitches are made from curves, then converted to mesh later. The final low-poly mesh is 24,428 triangles (21160 the boots, 3268 the charm).

After finishing the low-poly, I applied the Bevel and Solidify modifiers, deleted the unnecessary inner faces, and sculpted the detail with the Multiresolution Modifier. The high-poly model uses 25 million triangles (no high-poly for the lace and stitches).

I used the Sharp Draw brush for the creases, a wrinkle alpha brush for the leather's micro detail, and the Clay Strip (inverted direction) brush for adding some damage.

UVs and Texture

After finishing the modeling, I marked the seam lines and then exported the low-poly into RizomUV (it's really not fun in Blender, not even with addons). There, quadrified most parts, axis-aligned the islands, stacked the similar parts (and offset them), and finally packed the islands into one UV layout. The lace and stitches have their own UVs. They are using only tileable textures.

For baking and texturing, I used Substance 3D Painter. Because the model has floating geometry, I had to do 3 things to ensure good baking and easy painting:

  • Renamed the parts' names to match and added a _low/_high suffix to them
  • Add different materials with different colors to the high-poly (to bake ID map for easy masking)
  • Adding the same material to all low-poly parts

I textured the model based on how I learned it for character from J Hil. I pretty much only painted masks here and used the Curvature Map to generate the details. The baked material ID map was used to mask the main materials for easy painting.

Two layers are building up the dirt effects: a mud layer, using SP's built-in Ground Natural Mud material, and a bright dust layer. I made the dirt dry (bright and rough) to contrast it with the deep and shiny leather colors.

The sole base color has a spherical gradient to it. Because the sole was boring, I added the horizontal lines texture with warp projecting on a Normal Map. I had to fake the holes on the eyelets, so I filled them with rough, dark gray, and 0 metalness with the Curvature Map.

I didn't find any interesting pull tag references, so I took some pictures of mine. I de-lighted cropped images in Photoshop, made some variations and tileable textures, then generated normal and Roughness Maps in NormalmapGenerator. I Planar projected the images to the tag and UV projected tileables to fill the gaps. The charm is just a basic SP Polished Metal material with some paint on it.

Since the Texture Maps are intermediate files, I exported them in EXR (it's a deep rabbit hole in color management). I channel packed some of them (the only advantage this has in Blender is that it's fewer images cluttering the shader, and fewer images are loaded in memory, which could make a difference if there are a lot of textures and shaders).

The final Texture Maps I used in this project, with the UV layouts (Albedo, Normal, Roughness, Metallic, and the UV).

The boots and charm are using a default/simple Principled BSDF (with the Albedo, Normal, Roughness, Metallic maps, nothing special). For the lace and the stitches, there are 2 versions of them, because my first try didn't look good. I used a better texture with higher color contrast the second time.

Because I "textured" them in Blender Shaders, they have a slightly cluttered material setup. I used material layering on them (which means that the dirt and textile don't interact with each other, f.e. There is no textile's normal on the dirt's normal.)

On the old material, I layered them in one Shader, using Principled BSDF's Coat for the dirt, while in the new Material, I made the dirt and wool with 2 Shaders and then mixed them to get the layering effect. Old Material, 1 Shader with Coat:

New Mat, 2 Shaders mixed:

Scene Setup, Lighting, and Rendering

Before setting up the scene, I mirrored the boots to get a pair. I only added the charm to the right side of the boot. For this, I added an armature to the boots, rigged the pull tag, and, after posing it, adjusted the form in sculpt mode.

I wanted to show off both the texturing/creases and the charm. To drive the eye to these details, I tried to use the principles of:

  • Composition (I tried to put the charm and the other highlight roughly on ⅓ of the image)
  • Lighting contrast (made the charm and the details on the side of the boots the brightest) (I'm not sure what this is called. Basically, when you look at the brightest part of an image)
  • And color temperature difference between highlight and shadow (used a slightly warmer light for filling the shadows)

I set up the scene for 2 close-up renders and 1 wide, "all-angle view" shot. The close-ups are using 3-point lighting, and the other just a simple HDRI. The key light is default 6500K and was set up to get more sharp highlights and shadows. The fill and "rim" (more like 2nd fill) lights are 5000K and much bigger and dimmer to get soft highlights.

Post-Process Effect

I just used the default AgX view transform with High Contrast look (maybe not Blender's default, but mine). I use the Linear Rec. 2020 color space instead of the default Rec. 709 as working space, though I doubt it made a big difference in this project's case. I used Blender's built-in Freestyle render pass and material override to render the wireframe views. I found out about it in this video:

Conclusion

What is the key to creating appealing props? Since this is my second model that actually doesn't look bad, I don't think I can answer that. But good lighting for sure helps (even an HDRI can). I'm not sure I can give any good advice (other than saying: practice, practice, practice), but I can show my process, the problems I faced, and how I would fix them next time. Most of the time, the challenges I face come from my inexperience and misconceptions. I made 2 big mistakes in this project.

Mistake 1, not optimal low-poly: There are so many ways to model and so many results you could want to achieve, it's easy to aim for goals that are just not compatible. I wanted to:

  • Make an accessory that won't be in the focus VS. a potential portfolio piece (with close-up photos)
  • Use Subdivision for rendering VS. make a low topology as low as I could

These contradictions lead to me making a model that has texture stretching issues when using Subdivision, and also having a not good low-poly model (it's both too high (sole) and too low-poly (leather) for not using Subdivision). I should have applied the Subdivision modifier on level 1 before UV unwrap, or to alleviate the texture stretching issue, or should have made a better low-poly.

Mistake 2, too strong details in high-poly: The creases on the side leather patterns are too strong. I didn't realise it only after I finished sculpting them. I also could have tried to blend them in more.  A pressure-sensitive brush or more time spent on refining it would have helped, as well as using the Sculpt Layer addon.

Bence Jancsik, 3D Artist

Interview conducted by Emma Collins

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

Comments

0

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

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