Bartek Kuczyński discussed his Axe project, shared the workflow in ZBrush, unwrapping process, and texturing in Substance Painter.
My name is Bartek Kuczyński, I was born and raised in Warsaw, Poland. My little adventure with art and video games started fairly early, however, the idea of being a game artist has been put on the back burner until recently.
As a kid, I used to draw a lot with pencils and markers, mainly warriors and superheroes, and that was a sort of thing I was recognized by at school, even though I'd been making every anatomy error in the book possible. I also almost got thrown out of school because of playing Icewind Dale II day and night and not showing up in the classes. I still love to this day all Infinity Engine RPGs, especially Baldur's Gate 2 and Planescape: Torment, but also story-driven FPS/TPP (Deus Ex series, Thief series, Gothic series, Vampire: Bloodlines) and strategy games like Total War series (with realism mods created by community), to name just a few. I even did a really simple texture mod in Photoshop that uppresed and sharpened normal and albedo textures for one of the factions' units in Medieval II: Total War.
I graduated from the Faculty of Graphic Arts at the Academy of Fine Arts in Warsaw, with a master's degree in the field of editorial design and worked for several years as a graphic designer for one of the major publishing houses in Poland, then I went freelance.
That's when I discovered ZBrush. An organic way of working in it resembled so much clay sculpting and drawing. This made me think "damn, I really need to start doing this".
So I started looking at Artstation, watching tutorials and Twitch streams almost every spare moment I had. I focused most of my attention on ZBrush but also learned how to do common tasks in Maya and the basics of Marvelous Designer.
I've learned most of what I know about ZBrush from Michael Pavlovich, his videos are the clearest, concise, and comprehensive ones on the topic of ZBrush I ever stumbled upon.
The Inspiration for the Project
Two months ago, I had at least a dozen of WIP models and ZBrush sketches on my hard drive. I was jumping from one learning project to the next. I really wanted to move forward and start turning my models into proper game art, but in spite of all the abundance of information out there (or maybe because of it!), I still wasn't sure what would be the best way to approach it.
That's when Natalia Stolarz posted her WIP character and mentioned she's being mentored by Georgian Avasilcutei. I've seen Georgian streaming on Twitch before and knew his work, so I reached out to him immediately. And it turned out that joining his mentorship was really great decision. He's the rare kind of person that not only knows his craft but also is honest and direct when it comes to art, capable of giving accurate feedback.
We decided that the axe model I had already lying on my hard drive based on an old tutorial by Alex Jerjomin has the potential to make a decent first asset, given that I put some more work into it. I ended up resculpting it from the ground up and redesigning some parts in the process.
I started the model by making a blockout in Maya and imported it into ZBrush in order to work on the axe head. First, I dynameshed the head subtool with really high density and started to design the engravings using polypaint, alternating between black and white paint color (V). I looked at some Slavic and germanic runes and symbols for reference. Next, I converted polypaint into the mask (Masking -> Mask by Intensity) and then mask into polygroup (Ctrl + W) on which I used Groups Loops just to make the edges a bit cleaner for an extrusion. Then, I selected engravings polygroup (Ctrl + click) and pushed it inwards with the transpose tool.
Next, I started sculpting focusing mainly on the edges. The brushes I used mostly were aj_Polish (custom brush by Alex Jerjomin), hPolish, and Trim Smooth Border brushes found in ZBrush.
When it comes to achieving a "crude, hammered metal" look, after some tests, I found that destroying the surface with clay buildup brush, polishing it to remove the noise, then bringing back some parts of it using morph brush with small focal shift can give really interesting results, similar to how some heavy-handed blacksmith and time might have had treated the metal.
For the raking effect in the engravings, I used the RK_Rake brush by Ryan Kingslien I found online.
Lastly, I added a final bit of subtle details to my metals by using two or three brushes from Metal Alpha Pack by Fredo Gutierrez.
Working on the Details
Basic geometry for straps and cloth was created in Marvelous Designer. For the straps, I created a long, rectangular pattern, used leather lambskin preset, and increased Additional Thickness both for Collision and Rendering. Then, I pinned the strap to the avatar (tack on Avatar) and started wrapping it around, both by rotating the avatar and adjusting the pattern.
What I discovered was that giving the pattern a negative pressure value made the strap wrap itself around the handle pretty much on its own:
It's also good to remember about shrinkage settings, in my case, lowering the Shrinkage Warp helped to tighten the straps. I duplicated the pattern and simulated it once again on another layer to get the more interesting look:
Wrapping the cloth around the axe head was done in a similar manner, it just involved more adjusting, as I needed to make the pattern constantly longer as I was wrapping it around (making it full length from the beginning would've made it very difficult to manipulate). As to the ring, I decided to simulate its presence by assigning a thick rigid fabric to a circular pattern with a hole, and it turned out to be easier than working with another avatar. Later in ZBrush, I simply replaced that pattern with a ring primitive.
The scarf was also done in Marvelous Designer, I played with Wind Controller to help more interesting, dynamic shape to it.
I imported all the base meshes for straps and cloth back to ZBrush, Zremeshed it, reprojected original meshes into zremeshed versions to get some of the detail back and gave them thickness by using Panel Loops (Bevel=0, Elevation=0).
After quite a bit of tweaking and adjusting with Move Topological brush, I was ready to subdivide them a couple of times and start sculpting.
For styling the cloth, I used SnakeHook and Move Topological brushes, often taking advantage of AccuCurve functionality.
Before that though, I spent some time testing various approaches and different brushes to find what works for the kind of look I'd like to achieve. I like to devise sort of a little method for different parts before I commit to actual sculpting.
Knowing beforehand exactly how you're going to sculpt any given part helps to be consistent with your brushwork across the model.
I took advantage of ZBrush Layers that gave me more flexibility to work in passes and separate different kinds of details.
I know I probably could have done most of it in the texturing phase, it's just that I enjoy sculpting in ZBrush and like to stay in it for as long as possible.
For rendering the high poly, I used a really simple classic method of rendering a few passes out of ZBrush and compositing them in photoshop. I learned this from a tutorial by Michael Vicente (Orb).
Low Poly was a pretty straightforward process. Following Georgian's advice, I retopologized the axe as one piece of geometry (only ring and scarf are separate) to not waste any texture space. I used mainly Maya's Quad Draw tool for that task.
Initially, I was going to make UVs in Maya, but once Georgian had shown me how to use Rizom UV (it was literally C for cut, F1-F4 for different selection types, then U for Unfold, and O for Optimize), I decided to try it. What's cool about the program is that there's no need for importing or exporting anything, as it reads and saves FBX files. I quickly cut the model into major islands, unfolded it, googled for some more information, i.a. on how to make the packing algorithm keep selected islands together (awesome functionality!), then manually adjusted the layout. I was done with (hopefully) reasonably well laid out UVs in the first hour of ever using the program. Don't think I'll be looking at any other software for this task in the future, as the ease of use is unparalleled!
Maps baking was done in Marmoset Toolbag. It has the fastest baker I've tested (most 4K maps bake in seconds), and what's even better, you can adjust projection cage in real time if you need to fix any errors. Plus when you need to make some changes to your high or low poly meshes, Marmoset sees those changes and updates meshes automatically.
This is where the fun begins again, and it was my second favorite part of the process after sculpting. And most challenging, as it was the first time I really used Substance Painter; before, I only watched the ever-popular grenade tutorial by Tim Bergholz on youtube.
I started by doing research on materials that artists offer on marketplaces like Gumroad and Artstation store and bought some smart materials I thought could be relevant to my project. Just to test out different looks and learn more about how artists build their materials.
What I learned (and it wasn't a surprise at all) is that no smart material does the job by default, at least not for major parts of the model. Artists who created them obviously had different assets in mind, probably different styles, often on a different scale. No smart material will tell the story you want to tell, especially if we're talking about a hero prop. The only exception in my case was Medieval Iron material by Mark Obiols, which I ended up using for the top part fittings just above the cloth.
I built the main metal material for the axe head after watching how Georgian builds his metals. I followed his logic, started with one of the default metal materials, and built up more layers of roughness and color variation, added weathering, rust, and dust. I tried to take advantage of the mask editor (Ambient Occlusion and Curvature map inputs in particular), which Georgian had shown me how to effectively use and not have to rely on simple mask generators.
As a base for the leather, I ended up using Book Cover material I found on Substance Source, then built some variation upon it. Don't be afraid to take advantage of filters like HSL or Color Balance (which work similarly to adjustment layers in Photoshop) to tweak texture colors, be careful though, as making too much of a change this way can easily harm the texture.
For the cloth, Vintage Suit material found in Substance Painter worked best, I just build upon it many layers of variation, discoloration, dirt, wear and tear. Among other things, I used the tip from Flipped Normals video on how to make the height-based damage to the cloth.
Since we talk about cloth, here's how the micro-tear fabric was done; I wouldn't know myself just a few weeks ago. First, I made some simple cards geometry by extruding them from the edges of cloth. After Georgian introduced me to the concept of opacity maps, I started experimenting. The most straightforward method I found that I ended up using was simply painting the micro-tear in the mask of a fill layer. To make this work, I had to change the shader to PBR-with-alpha-blending, add an opacity channel to my texture set, and finally set the background layer opacity to 0. Here's a simple breakdown of this:
An additional tip is that you can find some images of torn fabric online, turn them into B/W images, import into SP, and use it as a stencil in the 2D window to paint your mask. I used such a stencil to quickly test scale and general look of the threads, then I painted the final threads by hand using a soft round brush for a cleaner result. Later in Marmoset, I used Albedo Alpha in the Transparency slot of the material.
I started having in mind the basic principles of lighting but didn't feel the need to stick to them dogmatically. I used one of the Marmoset Toolbag's default skies with very little brightness serving as a fill light and a two relatively bright and wide-angled spotlights as key lights. Also, there's a rim light and two small cold light sources to get some extra highlights on the metal.