Art Spotlight: Curious Fox

Back to overview

Background

Hi! I’m Valentina Hawes, I’m a freelance character artist for games and animation. I specialize in stylized work for real-time: handpainted textures, toon/cell shaded textures, stylized PBR, those sorts of things. I’ve worked with several indie studios and publishers on games and animated films over the past 2 years. Above all, I love bringing different art styles from 2D to 3D for games!

Overview

My goal for this project was to take a very simple character concept and execute it really well. In this case, the character was JUST a fox. Not a magic fox, not a fox/dragon hybrid, not a WoW-styled armored fox mount — just a simple red fox. I wanted to keep my scope down so I could really polish the character.

I asked some folks on Twitter and Discord what they were most interested in me going over, and the top picks were texturing and composition, so those things are what I’m going to be focusing on!

Composition

For clarity, I’ll be dividing this section into sketching composition, and actually assembling the composition in 3D.

Sketching

Color choice is the very first step I take when sketching. I usually do some messy thumbnail sketches that establish the colors and shapes for the whole scene, then from there I make a final “clean” sketch. I didn’t directly reference trees or foxes for this sketch, but I did compile a bunch of photos of foxes in motion on a pinterest board to get a general idea for the pose. I don’t try to figure out every possible detail at this stage, it’s more about declaring the mood, colors and overall direction. I like to do this with the lasso tool and some soft pencil brushes from one of my Kyle T Webster brush sets.

For this project, I chose keep the fox in saturated orange-yellow tones and the environment in darker, more muted blue-green tones. This contrast makes the fox stand out and ensures that it stays the focus of the scene. Once I established that, I could add small pops of warm color throughout the scene to tie it all together later, in the form of fireflies or flowers or something like that.

I also established a sort of “color hierarchy” for the fox itself – the navy blue fur would be the darkest, the orange fur would be the midtone, and the cream fur would be the lightest. The navy contrasts with the orange and matches some of the blue environment tones.

Composition in 3D

I made all the models first, then assembled them together. I kept in mind that I wanted assets of different sizes and colors for the environment, so I made 2 types of rocks (that could easily be scaled and rotated to look different) and several plant and grass cards. For my smallest assets, I used very small glowy “stars” that I placed around the entire scene — these are just very small sphere-like meshes.

I posed the fox in Zbrush, just because it was faster than rigging, then I propped the posed fox on some rocks (shown below) and modeled the diorama base around it.

A lot of my decisions for the diorama where based on the color choices. For example, I added some purple plants and cream-colored dandelions around the grass to pick up the colors from the fox, which really helps tie the scene together. The fox legs blended in too much with the night-sky background, so I added the clouds to ensure the entire fox could be seen clearly. I used the same tones for the grass that I did for the fox eyes, just less saturated. I color picked from the fox, rocks and grass in the scene to paint the water.

Composition Issues

I ran into some issues when I started assembling my diorama in 3D. Since I didn’t do any sketches from other views, I didn’t realize that there wasn’t really enough breathing room for the trees and the fox on the diorama base at the size I wanted. It became clear I’d have to make the whole base larger to accommodate the tall trees I had modeled, which put less emphasis on the fox, which defeated the purpose of the project. I still felt like having something taller than the fox in the scene could improve the composition, but I decided to scrap the trees in an effort to keep the scope and scale of the scene down.

In the end, I think I was on the right track with both the trees, and the original pointed/irregular bottom of the base. Another artist, Anya Elvidge, gave me some great critique on Polycount and took the time to make this awesome paintover, and it is objectively a much stronger composition overall. I’m still happy with how mine turned out, and I think it keeps the focus tighter on the fox, but I definitely want to take this piece in this direction if I revisit it in the future.

Texturing

I handpainted all the textures in this scene in 3Dcoat and Photoshop. The only model that has a diffuse bake is the fox, which was heavily painted over — I mostly use bakes as a time-saving step for establishing lighting and color. The people I asked seemed mostly interested in how I made the fox texture specifically, so I’m going to break down the process in steps: baking, gradient mapping, painting.

Baking

I modeled the fox in ZBrush, then did retopology in 3Dcoat. You can see both versions below:

Next, I baked the ambient occlusion and bent normal maps from the highpoly to the lowpoly in xNormal.

The ambient occlusion (AO) map calculates how much light the different parts of the model will be exposed to when uniformly lit. This is good for adding a bit of depth and clarity to the model. Below is an image of what the AO looks like applied to the unlit model.

The bent normal map will spit out this rainbowy-looking image, which is the result of it storing information in the red, green and blue channels. Essentially, the 3 channels of the bent normal map give the effect of lighting information from different directions.

The image below shows how these individual channels look when applied to the texture of the model. The below renders are unlit, so the fox model is not casting any shadows, the shadows are just baked into the texture.

I copy the AO map and all 3 channels of the Bent Normal to individual layers in Photoshop and blend them together until I have a result that is mostly midtone greys with no pure blacks or whites. This way, the gradient map will have a full range of values to span, instead of just darks and lights. Below is what that looks like.

Gradient Mapping:

Gradient Mapping (Layers -> New Adjustment Layer -> Gradient Map) is a great way to add hue to value. It allows you to apply a gradient to black and white images, so you can translate your greyscale bake into color without losing the lighting information.

For the fox, I made 3 layers for the main different colors: orange (“oranges”), navy (“darks”), and cream (“lights”). Then I made a layer mask for each color area:

Next, I made the three gradients I wanted. I already had a hierarchy for value (cream is the lightest, orange is the midtone, navy is the darkest), but at this step I can nail down the shadow and highlight tones within each color. I spend a LONG TIME playing with the stops on these gradients. This is the foundation for my painting, so I want to get as much useful color information in as I possibly can!

For the gradients themselves, I generally pick 1 or 2 tones for my shadows, 2 to 4 tones for my midtones), and 1 or 2 tones for my highlights. This results in much richer-looking colors. To unify those colors, I try to keep similar tones in my shadows and highlights throughout the model. All 3 of these gradients have blueish-purple shadows and creamy yellow highlights — even the navy has a warmer tone in the highlight. It’s subtle, but it makes a difference.

In the above image, the left side has gradients that only have 2 stops: a dark and light version of the same hue — basically the simplest and fastest way to get your colors on the model using gradient mapping. The right side has the gradients I ended up with after an hour or so of tweaking, with multiple stops and hue shifts. There’s nothing “wrong” with the one on the left, but its not making the most out of the light information from the bakes, and would have cost me a couple hours of painting to get to the more vibrant result on the right. Work smarter, not harder!

After I was happy with my gradients, I painted everything in 3Dcoat.

Texture Painting

I start by cleaning up the bake from the last step, mostly really defining the borders between the different colors and defining forms more clearly.

Fur is, generally, very organic and follows patterns for different parts of the body. The same animal can have very long and very short fur. I recommend looking at photos (or your pets, if you have any) to get a solid understanding of how fur behaves over different forms. Fur usually points away from the face and tends to “swirl” and change directions at joints.

For the soft look I was going for, I really wanted to stay away from doing a bunch of very pointy, very defined fur triangles all over the fox. Heavy-handed fur can totally overwhelm the model and make it hard to read. Instead, I opted for a few areas of defined, higher-contrast fur that break the silhouette (the back leg fur, cheeks, and tail), and low-contrast painted fur all over the body.

I paint fur (and almost everything) with the default hard round brushes in 3Dcoat. I mostly stick to the first three “Stroke Modes” that control brush size and opacity. You can find these on the very top of the toolbar in Paint Mode.

When painting, I rely a lot on pen pressure and color picking. I do each stroke by hand, following how it would contour to the body, and try to make color transitions gradually. Having the gradient mapped bake with lots of hue and value shift helps. I alternate between carving out the outline of fur shapes with a darker color, and painting large tufts in a lighter color.

To make fur look like it has dimension, its important to add highlights and shadows to some of the individual tufts, and have some tufts overlap each other. But the process really boils down to painting tons of little v-shapes for hours.

Fur is tedious! The quality of the results is directly proportional to how long you spend on it. There aren’t really any tricks or fancy brushes to get really great-looking fur quickly, at least not in a more detailed, hand-painted style. Hopefully, showing my general technique and how I use gradients to speed up the process was helpful!

Sketchfab

I really love using Sketchfab as a way to show my character work. It really lends itself to the diorama format, and it displays handpainted work really nicely. I can get a lot of the same effects available in Marmoset (where I took my final high-resolution renders for this piece), and the community is really awesome! It makes me think about how people will interact with my work, and informs my design choices at a deeper level, like having stars all around the scene that give a sort of “parallax” effect when you move or rotate the diorama, or making the clouds render as one-sided faces so that they don’t obstruct the view of the scene when viewed from the back.

Artstation / Twitter / My Website

About the author

Valentina Hawes

Freelance 3D Character Artist


Leave a Reply

Your email address will not be published. Required fields are marked *

  • darkminaz says:

    A very interesting spotlight, I really like the fact that you don’t rely on some very specific brushes making it possible for anyone with the same dedication and skill to get to a similar result.

    Also thanks for the bent normal idea, ill have to try that out in combination with substance painter, gave me a few ideas that might work 🙂

  • muy buen trabajo!! admirable el del guerrero jaguar!! te felicito*

Related articles