Reference & Inspiration
I have a hard time finishing personal projects; I always feel dissatisfied and rework everything endlessly. That’s why I decided to treat all my personal work like a production piece by setting deadlines and sticking to them religiously.
I was regularly checking the Diablo 4 dev blog while eagerly waiting for the beta. I really liked the concept art pieces they showed and picked a character that had a bit of everything I wanted to work on (organic sculpting, hair, props and cloth).
I estimated that it should take me 3 weeks to complete the Cannibal – short enough to be a challenge but long enough to have room for experimenting and having some fun.
Blockout & Sculpting
I like to take my time when blocking out because no amount of detailing will save a bad silhouette or bad anatomy. I’ll stay in the lowest subdivision as long as possible to avoid getting tunnel visioned by details.
Once the primary shapes are done, I work on the secondary detail pass, adding muscle and material definition. I try to limit myself to details I cannot add with texturing, like rips in the leather or deep cuts in the armor.
The third detailing pass (skin pores, micro-damage, leather bumps) will be done in the texturing software. Even though it doesn’t look as nice as baked details, it is a lot faster and gives you room for easy iterations.
During the whole process, I’ll switch between Maya and Zbrush. For the hard surface elements, I like to make simple meshes in Maya using creases, then subdivide them and send them to Zbrush where I use Zremesh to have evenly distributed geometry for the surface detailing.
When I’m done with the sculpt, I’ll make a quick pass with alphas and fibermesh to get a feel of how the fur and hair should look. Finally, I make a simple pose with the Transpose tool and export my decimated high poly to the engine.
This is where you really see what works and what doesn’t, and if you are at work, it’s a great way to get the last feedback from your Art director.
Tips & Tricks
- The first thing I do is set up my camera’s field of view and set the scaling of the character to match the game engine’s units and field of view.I set up a Camera and the units in Maya with the settings I have in the engine and use GOZ to scale my base meshes accordingly. I also set my Zbrush Camera to match what I see in my viewport.This helps you avoid nasty surprises with the Zbrush perspective and allows you to quickly add/modify elements and test them hassle-free in the engine with a simple export.
- I regularly send a decimated high poly to the engine to check how it looks; it’s like flipping a drawing to reset your eyes.
- I import 3D scans of humans and Écorchés when sculpting (there is one in Rafael Grasseti’s anatomy bundle, it’s awesome). Nothing beats 3-dimensional anatomy information.
- If you need to make nice pointy shapes in Zbrush and you are struggling with the move tool, you are in luck; there is a modifier called Accucurve.
- Using scanned assets as a base is totally acceptable for work, but for personal projects, I strongly feel that making everything from scratch is very important (even your basemesh), as this is the foundation of your knowledge and will help you immensely in the long run.
- When sculpting, I am already thinking about the way I will retopologize and bake my asset: not leaving small gaps or holes between elements, bundling things together, etc. Your future you will be grateful for; this will spare him a lot of headaches
Retopology & UVs
My retopology is completely done by hand. I’ve tried Zremesh and Quadremesh, and they are great when sculpting, but the results are too inconsistent, and I end up spending more time cleaning everything up. Topogun and Maya Quadraw both have great tools and ways of doing retopology; I switch from one to another depending on how it feels to retopo a specific mesh.
Once I’ve decided where I will put my UV seams (these will serve me as a guide and make for easy Uving later), I get cracking. Artists like Nimlot on Twitch have great videos on how you should place your geometry. I try to imagine a grid that deforms with the rig and conforms my vertices to it.
For the UVs, I cut along the seams I defined previously and just flattened the UV islands; that’s about it. I use Rizom UVs because it is the best UV mapping software out there – it’s fast, and the packing algorithm is top-notch.
Learning the shortcuts will make you twice as fast, and the whole process will be a lot more enjoyable.
My Substance Painter yearly subscription had just ended, and I decided to try texturing in Marmoset. Substance Painter’s procedural tools are more advanced, and I did miss the anchors.
However, Marmoset’s interface – where you drag and drop meshes in the outliner, switch materials easily and move objects around, and the way it updates your base maps instantly – makes it a very user-friendly program.
Being able to texture in your rendering scene is also a massive deal for me (and it’s quite close to UE5 rendering with some minor roughness tweaks).
I texture in layers, building my material from the ground up. I occasionally use premade smart fabrics, but never on their own; I put them in a layer to use some features I like and combine them with my own texturing.
More Tips & Tricks
Create variations in your albedo and roughness maps with procedural noise. If you feel your Marmoset is slow when painting masks, try setting the viewport quality to Fast in the project settings.
Building believable materials takes time. Slowly build them up: start with a clean undamaged surface, add color variations, sun/edge discoloration, damage, dirt, etc. Approach texturing like an artist approaches a painting. Your character is a composition, and the objective is not to render elements perfectly individually but to tell a story.
The Overwatch heroes are a perfect example of excellent character storytelling: the balance of color values and the materials’ rhythm (metal, roughness). Use ACES tone mapping in Marmoset’s camera settings; it gives a more cinematic look and matches the one in Unreal.
This also applies to Painter. It’s obviously better to texture in the right color profile.
Hair & Fur
This was a tough one; I’m still not satisfied with the outcome, but I had to meet my deadline and keep it optimized.
I was not confident in my ability to render hair; therefore, I decided to use Fibershop instead of Xgen. Fibershop is easy to use and updates all the maps in a matter of seconds, allowing me to quickly preview my changes and iterate until I got something decent.
I generated and placed the hair cards with GS CurveTools, a very useful script for Maya with great modifiers for the cards. I did everything manually. I tried fibermesh and Xgen to generate my curves and convert them into cards with GS CurveTools, but did not like the result (this is on me; my grooming was just bad).
In the end, I discarded the fur on the boots; it was horrendous, and time was up.
Final steps & thoughts
Some of the proportions still felt off, so I decided to fix them directly on the low-poly version: I increased the size of the skulls in relation to the severed hands, the feet were not massive enough, and the lower face was too big (I wanted the helmet to give me more shadows). I adjusted everything with the Move sculpt brush in Maya.
My rendering scene is straightforward – 3 lights and an HDRI, basic stuff. The posing was done with a basic rig and some terrible skinning that I fixed with the Maya move brush (again).
For aspiring 3D artists: I followed the concept loosely and did not worry about matching the proportions too much – something I would not do if it were for work or a portfolio piece for a job. It is essential to show that you can work as closely to the concept as possible.
That’s about it! I am humbled by the interest you have shown me, and if you have any questions, feel free to message me on Artstation.