In case you missed it
You might find these articles interesting
Hi! My name is Sergei Gereev, I live in Saint-Petersburg, Russia. I am a 3D Artist/Team Lead at an outsourcing studio. I studied Industrial Design at Arkhangelsk State Technical University (Arkhangelsk, Russia) where I learned composition, drawing, history of art, and other fascinating stuff but almost zero 3D graphics.
When I was a kid I saw an image from StarCraft with Hydralisk on a pile of skulls - for some reason it had a little sign in the corner saying “3ds Max” and I thought “Hm, that’s interesting, what is 3ds Max?” That’s how I started my journey in 3D that led me to the work on assets for a number of great projects like The Elder Scrolls Online, Age of Magic, Call of Duty: Modern Warfare, and Baldur's Gate 3 that is currently in development.
I moved to Saint-Petersburg about 10 years ago and started my career in gamedev as a matte-painting artist at a small studio that was developing hidden object games. It was fun but I had to move on to fulfill my desire to create stuff for big games with demons and robots and explosions. Now I’m working at Trace Studio here in Saint-Petersburg - we create awesome content for awesome games.
Why Character Art?
I started making characters back in 2009 but my career as a character artist started in 2015.
I was always interested in character art and classical sculpture. I’m interested in human anatomy and what I can do with it to make a character look a certain way. But I think what really got me into this is cloth and fabric - I’m fascinated with folds and how fabric interacts with itself and the human body, how different cloth creates a different mood and style of a character. Of course, vanity plays a role in it too - I mean we don't focus on props in the cover-art, right? - it’s almost always heroes or monsters there - so yeah, I want to see my character on a cover of some huge game someday.
Outlaw: Concept, Goals, Reference
When I saw this beautiful concept by Hugo Richard I instantly fell in love with it.
I mean, look at it - it’s so balanced, so alive, so open to interpretation. There is no face but cloth and gear that make all the pieces you need to build the story of this character.
Recently, I started to learn character rigging and saw a good opportunity for practice on this character. My initial goal was to make a model with a fully functional rig and idle-animation but it turned out that I am no animator. The animation was dry and uninteresting so I had to cut it off. Maybe I will return to it in the future and try again - it’s still an interesting skill to possess. However, the rig gave me a lot of freedom to experiment with posing so this effort wasn’t wasted at all.
Before I started working on the model I’ve collected some pictures of military coats, mainly Soviet-made - with a fluffy inner part. I was also looking for some tips and tricks on how to make this fluffy part. I think this type of coat was perfect for this project - it was literally the first thing that popped into my mind when I saw this concept for the first time.
I also use a lot of scan-data as reference when I’m working on any asset. In this case I used screenshots from 3D Scan Store - it really helps with sculpting folds as I can see the raw shape without any color.
The mask was a tricky one. In the sketch there’s only a front view of the character. As I understand, for Hugo, it was just a quick practice on his iPad so there was no back view, no close-ups, nothing of those things we expect from production-ready concept art. So yeah, it was a lot of guessing and inventing. It was fun and interesting of course but some elements were hard to deal with.
I prefer to model hard-surface elements in Maya rather than ZBrush and only when I’m satisfied with the look of it would I put it into ZBrush to add some damage and other details. This approach is a classic one I suppose - it gives more control over the model. I don’t remember how much time it took but the modeling itself wasn’t too hard - the main issue was to actually design and place elements properly so that they worked together, looked similar to the sketch, and generally made sense. The same was with the pistol - since I wanted to make reload animation I took some liberty with the design of it and made it work like a revolver.
Both the mask and the pistol were modeled in Maya using the subdivision modeling technique. I am not really a hard-surface modeling expert so maybe there are more robust ways to approach models like this, I don’t know.
The coat and the jumpsuit were fun and easy. I used my own base mesh for the body and just created new subtools by masking and extracting from that base mesh. Then I modified those new sub-tools mainly with Move Brush and Clay Brush using Sculptris Pro Mode or Dynamesh. When the basic look of a sub-tool is good I usually do quick retopology with ZRemesh and then start to polish it - this way I can keep subdivisions which makes ZBrush respond quicker.
I really like to sculpt folds and I try to do the maximum of the folds by hand when it’s possible. In this project I didn’t use Marvelous Designer at all as I wanted to have full control over folds, and I think I nailed it!
Even though I really like Marvelous Designer I think sculpting folds by hand is a great way to improve your sculpting. Also by doing it manually you expand your understanding of how folds are formed, what laws they obey, how folds on linen are different from folds on silk or leather. Yes, it is not realistic but here’s the thing - you cannot always rely on realism or on a simulation - sometimes you have to make stylized characters with stylized cloth that looks convincing. Plus, I’m lazy so I didn’t want to spend time on creating perfect sewing patterns in MD.
While sculpting I wasn’t sure what kind of materials I wanted to use so I didn’t apply any noise, patterns, or surface-details. This allowed me to experiment with different patterns later when I was creating textures.
Hair and fluff at this stage were there just as a filler since I knew I would deal with them later.
Retopology, UVs, Baking
Retopology and UVs were done in Maya. I think that for many people UVs are the most boring and tedious part of the work but I like it - it’s so meditative. It’s like a puzzle when you don’t see the final picture but you can cut the pieces as you wish and combine them freely. And it’s quite challenging as well - you have to keep in mind the size of the model, texel density and so on, especially with game-ready models. I tried different software for UVs but now I’m doing UVs in Maya. Its native UV Editor plus Maya Bonus Tools work magic.
Even though this was intended as a portfolio-piece I approached it as if it was a game-asset. I chose Marmoset Web-viewer as a target platform and made a technical task for myself in accordance with its limitations. I ditched this idea after the first test with fluffy fur - a lot of rendering features are unfortunately not working in the web-viewer and the fur wasn’t looking good enough. But the model was made as a game-ready model nonetheless. I used 3 texture sets to break up the model and make texel-density pretty even across the model.
Baking was done in Marmoset Toolbag. I really like how flexible and fast it is. I remember baking in 3ds Max, Maya, or xNormal and I am glad those times are in the past now. xNormal is a great tool though - I use it from time to time when Toolbag crashes under hundreds of millions of triangles it has to crunch.
For the texturing in Substance Painter I chose Metalness/Roughness pipeline from the start - for me, it is just easier to work with since I can see the whole picture when viewing Color, Roughness, and Metalness channels separately (unlike seeing black Albedo on metal parts in Spec/Gloss).
Texturing the coat was hard for some reason. Basically, the entire texturing phase was tricky - I made 3 attempts at it. I was experimenting with realistic and stylized textures and the 3rd take led me to the current state - sort of a middle-ground between realism and hand-paint.
The main issue with the coat was that it’s kind of blank-looking even in real life. I had to rely heavily on large spots and gradients for color variations since some micro details were too subtle to actually contribute to the final image. I also made fuzz masks for every piece of cloth to later use in Marmoset Toolbag to mimic the natural sheen of the fabric.
I almost always use procedurals and grunges native to SP. Rarely, I use custom grunges and alphas.
Basically, my pipeline looks like that:
First, I create the hierarchy of my project by creating Groups with Fill Layers named by the material they are supposed to represent. Things like Metal, Leather, Cloth, and so on. Then, I mask each group, add roughness for each material to see how the basic colors of the materials look together. Basic material layout for the helmet, for instance, looked like this:
The next step is to blend AO and Curvature maps with basic colors to accentuate edges, crevices, and other details transferred from the high-poly model. Also, at this stage, I usually add some random color spots via procedural grunges to add some variation to the base color and roughness:
Next, I usually add major features like dirt spots, discolorations, markings, patina, rust, etc. without getting into small details yet.
After that, I can just go crazy and add any amount of dirt, scratches, and stuff like that using more procedurals and, of course, painting some stuff by hand. Basically, this is the fun artistic part - when you go back and forth to add some minute detail here and there. Working on this model, it was 40% generators, procedurals, and grunges and 60% manually placing some details to break it all up.
This approach helps me figure out early on what materials I want to use, how these materials will work together and what will generally work for the final image.
I want to describe the fluffy part of the coat more in-depth - I’m really proud of how it turned out. The technique I used is pretty much standard now but before this project I didn’t really have a chance to try it myself. Basically, this effect is achieved by stacking several layers of geometry on top of each other and gradually revealing more and more of the lower layers via alpha-mask. I saw the description of this technique here.
I used 4 layers of geometry, one tileable texture for color and 4 alpha maps to achieve the effect of depth. The trick is to make the lower layers more opaque and upper layers more transparent to imitate the shape of fur clumps. I also used alpha maps as a source for displacement to push the fluffiness even further.
Color map and 4 alpha maps with different levels of opacity:
Here are the settings I used for the fluff materials:
With tessellation and displacement on, these layers create the illusion of depth.
To make the coat feel like it’s made of fabric and not of clay I used the fuzz map that was created in SP with its standard Fur Procedural. Even though it is tiled and repetitive this repetition is not noticeable in the final render since the effect of this map is only visible on the edges of the model or at extreme angles.
When plugged into the fuzz map slot, this simple repetitive texture gives this incredible Fresnel highlight that makes fabric material feel like fabric.
The braid is made using alpha cards and Marmoset Toolbag’s rendering abilities. The braid itself is composed of 1 texture set and 4 sets of alpha cards:
- Low poly core to fill up the ‘interior’ of the braid
- Cards that form the main shape of braiding
- Additional cards that close holes and break up the repetition of the braid
- Flyaway hair
And here are the settings I used for the hair material:
I spent a lot of time to figure out the best way to light this character. At first, I was going for a high-contrast Noir kind of look but I wasn’t able to get it right.
After some experimenting, I came up with this pretty calm and simple setup: