character art

Creating Realistic Skin in Toolbag with Saurabh Jethani

Character Artist Saurabh Jethani shared his approach to skin material creation and setup for his Mass Effect Pathfinder bust.

Greetings, everyone! This article will show you how I approach creating faces for real-time characters and present them using Marmoset Toolbag 3. I hope this article helps those who are looking to learn how to create skin materials inside Toolbag.

Sculpt

The focus of the article is aimed towards texturing and setting up shaders, but there are a few things I want to cover beforehand which I think help a lot in the final result.

I start sculpting using a custom made base mesh which has correct topology and UV’s that can be used for the low poly mesh. This cuts down a lot of time. The sculpting process is straightforward; find good reference, have a strong foundation in anatomy and go crazy until it looks good.

Lately, I’ve been using texturing.xyz for my pore details. Sculpting pores by hand (dragging alpha) and it doesn’t make much of a difference for games/ real-time character creation unless you zoom in real close. The choice is yours.

Tip: Adding subtle noise in skin helps to breakup the “perfect” feeling and makes it look more organic.

Textures

The texture maps I used were:

Normal, Detail Normal, Detail Weight, Roughness (inverted Gloss), Albedo, Translucency, AO, Cavity, Noise, Specular (Optional) and Scatter (Optional).

Albedo: Albedo is color information. For this project, I projected albedo data from texturing.xyz. Below is my process for how I projected my albedo map. Another option to achieve a similar result would be hand painting your textures (Magdalena Dadela’s GDC tutorial demonstrates this really well). While hand painting is fun, it’s more time consuming compared to working with scan data.

One useful tip to help enhance the feeling of subsurface scattering in your albedo map is to paint veins and redness around high blood flow areas like the nose, ears and cheeks. Make sure to keep the color shifts subtle. Multiplying your cavity map down as a red color helps fake the subsurface effect and helps align the pores in both the normal and albedo maps.

Cavity: Cavity maps can be used in multiple maps, such as Albedo, Specular and Roughness. It’s simply a black and white map where the pores are completely black. Marmoset have added Cavity maps to Toolbag 3’s baker which works really well. The method I personally like to use is extracting cavity detail from ZBrush since it’s faster than baking. However, for this you’ll need to have the same UV’s for both low and high poly meshes.

In ZBrush, fill your mesh with a pure white color then go to Tools > Masking > Mask by Cavity. The default values should work just fine. If not, play with the curve profile to get better results. Lower the blur values a bit, since ZBrush’s default values are too intense. You can change this under Preference > Transpose > Mask blur strength. Invert the mask and fill it with black, create a texture and export.

Normal: Bake down your high poly mesh onto the low poly mesh.

Translucency: This defines how much light scatters through the surface. Brighter values on the map define thinner areas such as the ears, tip of the nose, nostrils, eyelids and lips. The map can be derived by inverting the thickness map baked from the high poly. I tweak the nose area on the map to make it more intense and give it a more fleshy look.

Roughness: Personally, I feel this is the most artistic map in terms of how they’re constructed. Every artist has their own methods, but the basic principles remain the same.

  1. Have a base grey value that defines how rough/glossy the face is in general.
  2. Paint different values in specific areas of the face that are rougher or smoother.
  3. Pore details should be rougher, they shouldn’t appear shiny in engine.
  4. Have big breakups in value which are really subtle. This isn’t realistic, but it looks good when the light moves.
  5. Paint different roughness values for scars, wounds, dirt, sweat, etc.

1 and 2 are the major points. I’ve seen people only use 1 for stylized faces. 1, 2 and 3 work really well and 4 is an experimental one I’ve seen people do, but it looks good when lights move. 5 is subjective to the project you’re working on. And this is what I meant by the Roughness being the most artistic map, you use your own creative judgements and make it look good.

Below is an example of how I usually construct my roughness maps. This map used all the methods above and the new face was created with A and B. The construction of Roughness maps vary from project to project. In Toolbag, a value of 0.45 Roughness value works well as a starting point.

Scatter: Scatter maps describe the color which bleeds at the transition point from light to shadow. A flat peach color works pretty well for realistic skin, and it can be obtained by fully saturating the albedo map. The texturing.xyz data I used is extracted from the subsurface value of skin, so saturating that gave me realistic values.

Detail Normal: This tiny, tileable normal map helps make your textures look more detailed than they actually are. Substance Painter includes a few detail maps in their library that can be imported into Toolbag. For this project, I used Skin_bumpy. If you don’t own Substance Painter, you can find a good detail map by Yuri Alexander available for download from Marmoset’s Character Setup page.

Detail Weight: This is a black and white map which determines where the detail normal map will be applied. Black being the place where there is no effect. The lips have specific pore information, so you don’t want tiled pores there. You can have some of this applied to the tip of the nose and the bottom of the eyelids.

Noise: This map is used to help the fuzz look better.

Skin Material

Toolbag 3 handles skin shading like a champ. The material is easy to construct and looks amazing. There are no exact values for skin that make it look realistic as it varies from project to project. With that said, there are a few values that work really well as a starting point.

  1. Specular: 0.027
  2. Roughness: 0.45

Before starting anything in Toolbag, make sure the scene scale is properly set. Use Show Scale Reference to ask a gentleman for help and match the scene scale. Below is a demo of how I set my up skin material inside Toolbag.

There are three important aspects to keep in mind for skin shading:

  • Specular
  • Subsurface Scattering
  • Global Illumination

All of these components are key to setting up a good skin shader. A common problem for skin in CG is the lack of light bounceback from different parts of the skin. GI helps to achieve that effect and gets rid of the AO created by the engine around the corners of the nose, lips and fat above the eyelids. It also helps with translucency.

AO helps ground the eyeball on the face. A high strength setting and small size generally works. For GI, start with a low brightness and adjust upwards. You want to get rid of the extra AO and darkness around the eyes, corners of the nose and where lips meet. Make sure not to make the GI too intense, as it makes the skin look emissive.

SSS in Marmoset is composed of Scatter Depth and Translucency. Scatter Depth describes how fleshy or waxy the surface is. A flat peach color works fine for realistic skin. You should look for a subtle transition from your shadow areas to skin. Translucency defines how much light scatters through the surface. Place a light behind the ears and the side of the nose and tweak the values that work for your scene. The effect should be subtle with light passing through the skin.

A specular value of 0.027 is a good start for skin. Skin has two specular layers instead of one, which makes for better rendering. The Secondary Reflection helps achieve extra spec and gloss around the highlights to mimic the oily surface of the skin (Image 01).

Adding a cavity map helps remove specular reflections inside pores non-destructively. It can be baked into the specular map, but having a slider is much more flexible. It also helps salvage any pore details that are blurred by the SSS (Image 02).

Skin is all about subtleties. Find good references and try your best to match them while making sure it looks good under every lighting condition.

Eyes

The window to the soul.

One thing I care a lot about and try to constantly improve is eyes and how the eyelids interact with the eyeball. Make sure they are thick and hugging the eyeballs in both the high and low poly meshes. This helps make the eyeball feel more integrated.

Marmoset have recently added Refraction to Toolbag, but it does break on occasion and is not as complex as Unreal’s (Unreal has the prettiest CG eyes I’ve seen yet). But don’t sweat it, I have you covered. There’s a simple yet effective way to make realistic eyes in Toolbag. The method was originally developed by Peter Zoppi in his tutorial for eye creation, which I would highly recommend getting if you want more detailed instructions.

Geometry and Baking

The best way to fake refraction is to bake the geometry of the eyeball. To do so, make sure your low poly has a cornea bulge that’s duplicated and convexed inwards to form the pupil. Smooth the high poly mesh and bake it down to the low poly. The cornea and eyeball are part of the same low poly mesh and share the same UVs, but they will have different maps.

Maps

After baking, the process becomes straightforward and you can texture the eye however you want. One thing that will help make your refraction better is adding a parallax map. It’s a flat white map and a black colored pupil with gradient borders.

  1. Eyeball Normal
  2. Eyeball Gloss
  3. Parallax
  4. Eyeball Albedo
  5. Eyeball Spec
  6. Cornea Normal

The normal map for the eyeball should have the iris details and the albedo should include the color of the iris, eyeballs and the veins. The normal information of the veins should come from the cornea’s normal map with noise applied to give it a more wet look. However, make sure not to include any noise in the in the cornea bulge. Specular and gloss maps vary from project to project.

Eye Material

Tip: I’ve seen people use Photoshop to enhance the contrast in the eyes on the opposite side of where the light is hitting the eyes. The same effect can be achieve using secondary reflection. It can make eyes more attractive, but it can look overly stylized. Use your own judgement and apply it if it works for your project.

Lashes and Wet Line

The lashes are hair cards that are placed by hand and the wet line is a mesh blending the eyelid and the eyeball together with additive transparency applied. Setting the reflection to Anisotropic instead of GGX helps sell the effect. Change the direction so the highlight follows the direction of the geometry when the light moves. The wet line is something I’m still experimenting with and I haven’t found a good medium which works in every situation.

Lashes Occluding the Spec

While writing this article, I realized something was missing from my eye setup. It’s a minor change that makes a major difference; lashes and lids occluding the spec in the eyes. This is a common problem for real-time rendering, as the lashes are composed of cards and neither GI nor AO help to achieve this effect. Again, don’t sweat it, I have you covered. It does feel like something might break when the eyes are animated, but for still images, this works fine.

Lighting and Presentation

Lighting

A skill I’ve neglected, and now I regret it. You can create an awesome sculpt, perfect texture maps, but if you’re not able to showcase your model properly, none of those things are going to matter. Although I’m training myself in this area, lighting is still my weakest link. If you’re like me and blank during the lighting process, I have a lighting setup for you which works great for portrait presentation.

Presentation

Nothing is perfect in real life. Adding imperfections helps sell the believability of your character. For this project, I wanted a vignette effect and to rotate my camera in the Z axis by 2-3 degrees to make it look straight after by manually moving it.

Adding Bloom and Depth of Field can also add realism to your scene, while Chromatic Aberration can mimic the effect of a camera shot. Fog can be added to give the viewport space a sense of depth. Whatever you do, make sure it’s done with taste and compliments your piece rather than take away from it.

Tip: Renders will look different across multiple screens. My monitors have different colors and my renders generally look different on each screen. Changing the Tone Mapping setting to Filmic and tweaking the Exposure to a value of 2.2 is generally a good point for my renders to look decent on a wide variety of monitors .

Thanks to the people at Marmoset for giving me the opportunity to write this article. Thanks to the people who read it and made it this far since the article is much longer than what I wanted it to be. I hope it helps 🙂


You can check out more of Saurabh’s work on Artstation and learn more about Toolbag 3’s skin shader in Episode 6 of Getting to Know Toolbag 3.

Artist Feature | Satoshi Arakawa

Interview conducted by Mira Karouta

We sat down (virtually speaking!) with industry veteran Satoshi Arakawa to discuss his career as a Character Artist in the games industry and experience using Marmoset Toolbag throughout the years.

Could you give us a brief look into how you came to be a character artist?

I actually started my career as an environment artist. I worked for about 2 years in this role on a hand-painted MMO. While I enjoyed it, I really wanted to do something different. I hit a harsh industry reality when the art style was reset and all the environment art I had built over a year was pretty much thrown out. It was at this time that one of the character artists asked me if I wanted to try characters. The timing was perfect and the transition was pretty smooth. I haven’t looked back since!

What’s your favorite and least favorite parts of creating characters?

There really isn’t a part of character creation that I don’t like. The retopology and UV creation is probably the least creative step in the process and therefore not quite as enjoyable. Still, I take pride in applying what I’ve learned to do these steps more efficiently with every character I make. The most enjoyable parts would have to be the high resolution sculpting and the texturing/materials phase. From simple shapes to fine detail, sculpting is incredibly fun and it’s hard to break away from and move on. Texturing and materials is where you get to really see your character start coming to life! This is also where I start using Toolbag heavily in my pipeline.

When did you start using Toolbag?

I started using Toolbag almost immediately when it first released. The first few normal mapped characters I ever did in my career were rendered in Marmoset Toolbag 1. I think this was back in 2009-2010.

 

How has your work and your use of Toolbag evolved over the years?

I think early on, I would use it mainly to render characters once they were completed at work or in my personal time but it wasn’t really in my pipeline. It felt like a tool to use at the very end to make my characters look better with lighting, etc. And I never used it at work. Now, with the upgrades to PBR and the integration to Substance and how easy both can be used together, it is pretty much a staple in my process both at home and at work. I use it to test my assets in multiple lighting scenarios, different material setups, etc. Now that I can bake all my base textures in TB3, it has also replaced the baking software I used for almost a decade.

How do you use Toolbag in the studio versus using it in your personal work?

My process for using TB3 is mostly the same at work and at home. Once I get to baking, I do all of that in TB3. Texturing is a mix of Substance Painter and TB3 to view my assets. I suppose the main difference is the rendering. At work, once I finish texturing, I have to put my asset into my game engine and tweak textures to adjust for a different lighting model. At home, i just stick with TB3 and set up all my lights and do all my rendering right there. With all the extra features like AO, subsurface scatter, refraction, anisotropic, high resolution shadows, and GI, you can make your characters look so much more high fidelity then in the past.

What’s your favorite feature in Toolbag 3?

I think my favorite feature has to be the subsurface scatter shader. I use it on pretty much every non metal/non hard-surface material. It has the perfect blend of features to make my materials feel more realistic. The way it has evolved has only made it stronger with every Toolbag update. I really enjoy using it in various ways and testing its limits and capabilities and seeing how it can be used to give me further variation in my materials.

What are you looking forward to seeing from future versions of Toolbag?

I honestly can’t ask for a lot more out of Marmoset for the type of work I use it for. I would love to see features like refraction, subsurface scatter, and shadows continue to improve. I use Marmoset in conjunction with Substance Painter so integrating the two further would be fantastic. The baker is now a key step in my pipeline so any future additions to that will also be greatly appreciated.

What is one piece of advice you would give for up and coming character artists?

I would say focus on making great art one piece at a time and start small. I think a lot of young artists feel the pressure of wanting to have amazing art in their portfolios right away and they strive for too much, too fast. The key is to build towards the next project and to get better/faster each time. Start with something manageable for your current skill base but make it look amazing. If it’s just a barrel, make it the best damn barrel out there!

Check out more of Satoshi’s work on Artstation and learn more about how you can create stellar renders using Toolbag 3.

Toolbag Artist Highlight | Ep. 181

Enjoy a new set of real-time artwork rendered in Toolbag.

  1. Georgian Avasilcutei crafted a sublime render of his character, Vi.
  2. Jaco Herbst forged a fantastic football girl.
  3. Vlad Costin created a creepy post apocalyptic style rat for Warhammer Total War.
  4. Victor-Emmanuel Pancrazi developed a stylized character based on a concept by Max Kostenko.

Thanks for checking out the latest featured artwork rendered in Toolbag. Stay tuned for more next week.

Character Lighting and Shader Setup with Chong Zhang

Chong Zhang is a character artist who was kind enough to give us a thorough breakdown of how he set up his character, Mina, in Marmoset Toolbag 3.

“Marmoset Toolbag 3: A Pocket Camera With DSLR Quality!” – Chong Zhang

Motivation

I’ve recently resigned from my position at Virtuos, a great outsourcing company where I spent 10 years learning most of my industry knowledge. This finally gave me a big chunk of free time to do some hands on artwork, which I’m always eager to do because most of my job at Virtuos was on the management side.

Now I needed a subject. I can’t write stories or invent characters, so I tend to choose one from the movies I like. I’ve always liked Coppola’s Bram Stoker’s Dracula. While it’s not a perfect movie, Winona Ryder’s beauty, Gary Oldman’s performance and Annie Lennox’s song make the movie shine. Since I’m not a musician and Gary Oldman just received an Oscar, I thought I would represent Winona Ryder’s beauty. Finally, my strong love of the story, character and emotion is what helped me get through the long production period.

Why Marmoset Toolbag 3 (MT3)?

The answer: the engine is specifically designed for individual artists. For that to work, it must have certain qualities.

Ease of Use

I’m an artist without a technical background and do not have a team of technical artists to help me solve my problems. Marmoset Toolbag 3 makes it easy to pick it up and go. When I do have a technical concern, the community on MT3’s Facebook user group are there to help. On the few occasions where I was facing issues, I asked my questions and received responses instantly. There are no complicated shaders and not much optimization is needed. Everything is well placed and the focus is on what an individual artist really cares about, leaving time for creativity and boosting quality. This leads us to the next point, quality.

High-Quality

MT3 is one of the best engines for visual quality because Marmoset understands the needs of an individual artist and have designed Toolbag to make their work look as good as possible. Although, you still have room to adjust the balance between quality and performance. But we don’t care about performance too much since we’re not using MT3 to present an open world game, right? 🙂 So everything has been set everything to high-quality by default. But do we need a super machine to run it? This leads us to the next topic, performance.

Good-Performance

The scene I’m about to show is roughly 200k tris and includes 800MB textures. I know I could have optimized a lot, however I did use .psd files to save time. It runs smoothly on my 3 year old Dell T7910.

Okay, let’s talk about how MT3 helped me complete the production of my character.

Baking

I’ve tried baking in several programs and they all have their advantages. However, the reason I chose MT3’s baker is because it provided me with the opportunity to adjust my baking cage’s offset by painting weights on the UVs. The offset information is stored in my MT3 file as a map, which means that every time the high poly or low poly meshes are updated, the offset map remains unaffected. Another handy feature is the ability to re-paint weights and see the result update instantly with no rebake necessary. To make this possible, MT3 stores the updated map in the cache. Once you’re satisfied with your results, you can bake to save the maps on your hard drive.

The general process I use for baking is:

  1. Import the low poly and high poly meshes into MT3 and set up the baking groups in the correct hierarchy
  2. Bake a test version of the normal map on the low poly mesh. At this stage, I don’t refine my baking cage’s offset, so my first bake will likely produce many errors.
  3. Select the lowpoly sub-group and adjust the Min/Max Offset values until you have a fairly good result with most of the errors removed. A few errors will remain here and there.
  4. Click the Paint Offset button and begin to paint out the errors. Painting with a high value pulls the cage out and painting with a low value pushes the cage in. The point remains: you won’t need to rebake the map at all and the result updates instantly.
  5. Once I have the perfect result, I start baking the rest of the maps. (AO, Thickness, Curvature…etc.)

It’s a very effective process when you become familiar with it. The best part is when you want to make significant changes to the model, you can simply re-import your high and low poly meshes and bake again without needing to go through the process again. The offset information has been stored in the MT3 file. There is a more in-depth tutorial created by the MT3 team to cover the basics of baking, however I simply wanted to emphasize how you can benefit from using it.

Silk Material

I simplified the silk material to be a highly reflective material with a fuzz and anisotropy effect. MT3’s shader has all I need to represent this. Here’s the shader breakdown:

Nothing fancy. The important part is to change the Diffusion shader from Lambertian to Microfiber for the fuzz effect. I’ve also changed the Reflection shader from GGX to Anisotropic.

Skin Material

I based my skin shader on the tutorial video provided by the MT3 team. Here’s the breakdown:

I want to emphasize that it is actually the Gloss and Cavity maps that make the skin look more detailed, so don’t hesitate when creating them. And don’t forget to take advantage of the Detail Normal Map.

Eyes

Eyes are difficult for me and I haven’t found the best process for them, but this is my breakdown:

The eyeball consists of three meshes:

A. Wet line (which exists between the eyeball and bottom eyelid)
B. Reflection/Refraction ball
C. Eyeball
D. I’ve applied a flat 2×2 px texture to enable the Displacement shader. The general idea is to make the Reflection ball slightly bigger than the eyeball since both meshes are the same. Alternatively, you can use a bigger mesh for the Reflection ball and avoid using the Displacement shader.
E. I’ve used a Displacement map to create a concave pupil.
F. The AO map simulates the subtle ambient occlusion caused on the eyelids. You’ll need a separate UV channel here.

 

There are a couple of things that make me unhappy with the current approach:

  1. I’ve assigned the Refraction shader to the whole Reflection/Refraction ball mesh. This is incorrect, as the cornea is the only part that has refraction and this causes some problems from certain angles.
  2. The AO effect is not strong enough and can’t be increased using the current approach. Because my AO map is in the AO channel, the AO effect weakens once the light hits it. This is natural to AO.

I’m hoping we can find a better way.

Animation


It’s worth mentioning that MT3 supports the Alembic format. This was perfect for my scene since my particle animation was generated in 3ds Max as a vertex animation. I’ve simply exported the particle asset and imported it into MT3. Camera animations can also be exported from any other 3D apps, or you can animate your cameras directly in MT3. In my case, I’ve animated my cameras inside of MT3. The animation tools are as intuitive as other features in the app, especially when you have some basic knowledge of keyframe animation.

Lighting

I almost forgot to mention lighting! This is my simple setup for lighting the scene. I‘ve added a dominant Spot light, two rim Spot lights behind the character and two Omni lights to light the face up a bit.

That is all. Thank you.

Find more of Chong’s work on Artstation and learn more about Toolbag 3.

Toolbag Artist Highlight | Ep. 180

Check out a new collection of 3D renders in this week’s Highlight!

  1. Andrew Ariza created a powerful render of a character, Mwezi.
  2. Andy Nelson constructed a stellar Pentax K1000.
  3. Daniel Thiger‘s material exploration continues with a super slimy parasitic growth infection.
  4. Karina Bastos crafted a fan art piece of Brigitte Lindholm from Overwatch.

Thanks for checking out the latest featured artwork rendered in Toolbag. Stay tuned for more next week.