Michigan

test-scaled
58

Mike Forestall

Mike Forestall

Introduction

Hi there!

I’m Mike Forestall, a character artist living just outside of Toronto. For the past two years I was a character artist working for Electronic Arts on the FIFA team. I also worked with the team at Secret Location on the Nerf IP.
I am now headed back to the classroom to brush up on my skills at Think Tank Training Centre.

I’m also a little too enthusiastic about Dune, Bionicles and Warhammer 40k.

mike-forestall-michigan-midfront-scaled
mike-forestall-michigan-midfrontposed-scaled
mike-forestall-michigan-fullfrontall-scaled
mike-forestall-michigan-closefront-scaled
mike-forestall-michigan-closefront-002-scaled

Project

Every time I start a new character I try to identify an area of the character art pipeline in that I feel I could learn something. I knew that with this new character, I wanted to stretch my knowledge of hair card creation and placement. I also wanted to make a civilian character whose design is based on modern-day reality.

I found a fantastic concept piece done by Adrian Wilkins, who kindly let me reference his design.

Untitled

But before we move on, I need to highlight the work done by Hazel Brown.

On her Artstation page, she has a detailed breakdown of how she tackled a hairstyle with a similar loc style.
Only after reading her tutorial did I feel confident enough to tackle the hairstyle seen in Adrian’s concept.

References

Because this character was based firmly on reality, most of the references I looked for came from photo references more than any other source. I was especially interested in what form the locs would take in my project.

I had never attempted black hair before, so this period of observing photos was essential before moving on to modeling or texturing.

Untitled1

Blockout

Before I began blocking anything out, I built a simple Metahuman using Epic Games’ online toolset that somewhat resembled the character. This gave me something of a base mesh to work with, and also set a visual benchmark for the graphical fidelity I was going for.

I then started my blockout in ZBrush.

ZBrush is my initial program of choice because It’s very easy to get quick meshes together to get a sense of the silhouette and proportions of the character. I tried not to do any detailed work at all at this stage because I didn’t want to overfocus on one part of the character to then have to make changes later to accommodate the wider design.

Untitled2

I decided to forgo blocking out the clothes in ZBrush. Instead, I jumped to Marvelous Designer to make them from scratch. In hindsight, I should have blocked them out first.

This is because I had difficulty deciding whether the jacket and hoodie were separate articles of clothing (jacket and sweater) or a combination of both (where the hood and zipper would be stitched into the inside of the jacket as one integrated piece).

This didn’t cause me any long-term problems, but the uncertainty wasn’t a great feeling, especially early in the modeling process.

Untitled3

I also blocked out a stand-in mesh for the hair. This gave me a good idea of how big I wanted the hairstyle to be and how the locs would interact with the clothing.

Untitled4

Modelling

Aside from the hair, the modeling of this character was fairly straightforward. I swapped between Marvelous Designer and ZBrush, making pieces of the character as I went. I built a low poly mesh of her head pretty early on in this process and then reimported that into my ZBrush scene.

I then projected the details from my high poly sculpt onto the new game-ready head. This enabled me later to grab cavity maps and a cleaner, higher-res normal map directly from ZBrush.

Untitled5
Untitled6

There were very few hard-surface elements in this character.

However, I did use 3ds Max to create her earrings and the soles of her boots. I also made some chains to go with the earrings as seen in the concept. I did this by taking some toruses in 3ds max, twisting them, and then linking them together. Once I had a straight segment of the chain, I baked it onto a flat plane that I could use to make low poly chains later.

I created the low poly meshes for the clothes and body in the same way as the head. I took a decimated clone of my high poly mesh into Maya and set it to a live surface. I then used the quad draw tool to create the new low poly meshes.

For the eyes and teeth, I decided to borrow the meshes and materials from the Metahumans project I made in Unreal Engine 5.
This is a habit I’m planning on ditching in the near future when I make my own hair and eye assets.

But for now, these assets work fine.

As expected, modeling the hair would prove to be the most challenging stage of the character. I started by referencing Hazel’s breakdown where she made a series of the root, transition, and flyaway cards to bake onto a flat plane. For the locs themselves, she uses xgen to generate “noisy” hairs on two cylinders at varying density levels.

Once everything is baked out, she constructs the locs with two cylinders containing the densest hair alphas and two perpendicular planes containing the hair alpha map flyaway sections. I followed her process step by step. I also added some variation to the edge loops of the locs to make them feel more natural. I ended up building a variety of locs with differences in width and length.

Untitled8
Untitled7

I used editable splines in 3ds Max to create a spline for every single loc that would go on the hairstyle. I then used the path deformer modifier with the constructed loc mesh to make each loc follow its respective spline.

I painted a map onto the head to help me keep track of all the splines that I needed to create. Once the locs were placed. I added my transition, root and flyaway cards by hand.

Untitled9
Untitled10
Untitled11

UVs, Baking and Texturing

The UV stage was done entirely within 3ds Max. Because I was using Unreal assets for the teeth and eyes, I had to create 4 different UV sheets.

The hair was already done at this point though so technically I only had to make 3 (hooray!).

  • Head
  • Body (arms, shirt, jewelry, pants and shoes)
  • Jacket
  • Hair (already finished)
Untitled12
Untitled13

I baked everything in Substance Painter.
Though I did end up swapping in some of the maps I generated in ZBrush, such as the normal map and cavity map. I also had to include the opacity maps for the chains I baked earlier.

I created the cavity map of the head in Zbrush by using polypaint in conjunction with the mask by cavity function found in the masking tools.

Untitled14

The body and jacket were textured using a combination of smart materials that I edited and layered on top of one another.
Using the many grunge maps that Adobe provides, I was able to get a level of variety in the albedo, roughness and height that made me happy.

Untitled15

One trick I learned during this process was how to make better-looking denim. I took a darker fill layer with a lower height and masked it with a rotated procedural stripes generator.
After tiling it many times and adding a warp filter on top, the material began to resemble the threaded quality of denim pretty nicely.

Untitled16

I began texturing the head by laying down a base fill layer and a cavity map on top.

Using this as my start point, I went in with the cotton brush on a very low opacity and started painting the subtle hue changes found in the skin of the face. This was about 20 layers of slightly differently coloured fill layers, but once they were stacked together they made a big effect on the believability of the face. I then added tertiary details like freckles and moles with the dots brush.

I wrapped up the texturing of the head by painting the eyeshadow, glitter and eyeliner.

Untitled17
Untitled18

When it comes to painting faces, I like to paint roughness separately because I feel like there’s more control in that approach.

This was helpful because when I exported to Unreal I found that my roughness values were a little on the shiny end. I ended up going back and forth between Substance Painter and Unreal many times to make minor adjustments to the textures.

Untitled19
Untitled20

Rigging, Posing and Rendering

Everything was rigged and posed using Maya’s quick rig tool. Since there were no controls for the fingers that I could find, I ended up posing each hand manually. I’m still a little unfamiliar with rigging outside of 3ds Max, but this was a quick and easy way to get a simple rig skinned to my character.

I then built a simple background for light to bounce off of, and to get rid of the empty black background that I had used for my previous projects.

I lit the character using a main fill spot light coming in from the top right, and then supplemented the scene with some point and directional lights to balance everything out.
I also lit the background a little bit to add a gradient of shadow behind the character.

Untitled21

I didn’t try anything too ambitious with my cameras. I set the focal length to about 24 and tweaked the manual focus distance until the character was fully in focus. For grabbing my shots

I used the high-resolution screenshot tool found in the viewport options.

Conclusion

I had a great time working on this character! Investing in my portfolio with pieces like this is how

I spend the bulk of my free time so it always feels good to get my work out there. I definitely want to thank Alfred and the rest of the team at GamesArtist.co.uk for reaching out, Adrian Wilkins for his design work, and Hazel Brown for her breakdowns!

Software used:

  • ZBrush
  • Photoshop
  • Marvelous Designer
  • Unreal Engine
  • 3DS Max -Substance Painter
  • Maya
mike-forestall-michigan-hairfront-scaled
mike-forestall-michigan-hairtop-scaled
mike-forestall-michigan-hairback-scaled