Aspiring 3d artist M.A. showed how he modeled and painted the amazing character tribute to Elena Fisher.
Let me first thank you for the wonderful opportunity to share a breakdown of my most recent completed project. I’d also like to apologize in advance for the rather lacking visuals, due to work and studies I had a quite limited timeframe to put this together.
I’m M. A., a self-taught, (aspiring) junior character artist from Houston, Texas.”
Prior to starting this project, I had finished a few relativity quick and low-quality projects to learn the basic technical aspects of character art. Having successfully finished those, I wanted to take a stab at a likeness of one of my favorite characters; the goal being to drastically improve quality over last my few projects, both in terms of the sculpt and shading. Being a huge fan of Naughty Dog games, I initially was torn between Tess from The Last of Us and Elena from Uncharted. Needless to say, I ended up settling on the latter.
The scale and focus of the project changed quite drastically over the three to four months of free time I spent on it. I had initially planned to do a complete model of Elena from Uncharted 3, however, due to time constraints I reduced it to a bust, as well as changed it to the Uncharted 4 Elena due to the sheer amount of high-quality reference available for this version.
The overall process for the sculpt is technically unremarkable, just slow and tedious. I started in ZBrush with an old base mesh I had from my previous project. I sculpted the base mesh into a generic female face before converting into a likeness; this isn’t necessary but it seems to help me quite a bit.
My references were split into two categories: sculpting references for matching the proportions and rendering references to serve as a more general idea of what I wanted the finished product to look like.
This is a rough example of how I group reference:
My sculpting references were the most neutral, low-distortion images of Elena I could find. I had to use some screen captures from the character gallery to help fill in the odd angles even though they were posed and fairly distorted. My rendering references were generally well lit and posed or displayed the materials in a way that I found interesting or informative.
Once I was satisfied with the sculpting references, I carefully laid them out on the canvas using spotlight and matched my model to the references as best as possible. I stored each of the views using ZAppLink. Once the views are stored I basically used the move and clay brush to get everything lined up with the reference image; constantly switching between the stored views to test each one with the changes I made to the shape. When the overall likeness was close enough, I subdivided it one more time and start adding layers.
For the eyes I arrived at the look I wanted through pure trial and error. I first modeled a high poly eye in Maya using two spheres and my proxy eye that was modeled in ZBrush as a guide for the general size and shape. Once I was satisfied with the overall look of the eye I duplicated it and reduced it by hand to create the low poly. In this specific example, I only used one piece of geometry for the eye so I baked a single normal with a convex iris.
For materials I focused solely on the albedo, using flat values for the roughness and specular. For the albedo, I started with the albedo that is included with the Unreal Engine 4 character rendering demo. I created masks for the iris and pupil using substance designer and used them to guide the shape of everything else. For the iris, I used an HD texture. Since the end product is heavily composited, you can get away with hand painting the iris as well as using other tools like Substance Designer or even carefully extracting an iris out of a photo provided it has minimal specular information on it.
For rendering the eye, I found it really important to get reflections on and around the pupil. I carefully picked the environment that yielded this without including any ambient lighting that might clash with my light set up. Here’s an example of how the eyes look with and without the reflections:
Painting skin by hand was definitely one of the trickiest things for me to try to learn. I would say the most peculiar part of hand painting skin was balancing the technical and artistic aspects. Due to the sheer amount of information in human skin, you generally need quite a few layers which makes it really hard to stay in that artistic mindset because you are constantly forced to switch from layer to layer to edit certain information as well as determine the organization of new information for later use.
To start out painting the skin I carefully picked a base skin color. Once I was mostly satisfied with it (it doesn’t have to be perfect at first, I ended up tweaking the saturation later on), I picked a series of purples, reds, yellows, and browns that complimented it and stored them to my swatch layer. The highest visible layer on my layer stack was my swatch layer, which held all the foundational colors I was using for the face. Any colors I used, later on, were generally derived from these.
I started with a brown/yellow layer that sets the base skin, and then added a layer for red/purple/pink areas; I did the lips and eye area in separate layers for more control. As I moved up the stack I used lots of yellows and browns tiled over with a low opacity to break up the skin tone. For the pores and micro details I used a concavity map as a layer mask and painted over with a mixture of red and brown depending on the area. From there on out, I added blues and reds as I saw fit. By the end, the layer stack was very messy but the fine-grained control of information was very useful when doing small iterations.
My basic workflow for detailing skin is simple, dirty, iterative and done entirely in Zbrush. I first applied some noise with the noisemaker and adjusted the layer opacity to get subtle breakup to the skin. I then created a base layer of detail that covered all but a few select spots on the face (mouth, eyes, and neck in this case). For this layer, I used mostly alphas. I spent a bit of time carefully orienting these alphas to make sure the micro details followed the contours of the face properly. Once I was satisfied with this base layer of detail I then went over it with the standard brush on spray mode, tweaking the flow and placement with various default alphas to get interesting and organic looking details to break up my first layer of alpha detailing. Needless to say, as I worked through the details and did test bakes I found myself unsatisfied with the anatomy, so I created a few layers to fix various parts as I progressed. As I descended the layer stack I added more one-off fixes and layers to blend detail between various parts.
For my render, I started out by looking at my rendering references and deciding what I really liked and wanted to imitate in my render. Like every other step in my pipeline, I wasn’t 100% sure what I wanted until I started trying things out. After going through a series of simple 3 light setups I decided where I generally wanted my key light and my rim lights, based on where I wanted my cameras (the lighting was only really designed to work from those views). From there on out, I added the fill lights and tweaked everything while constantly checking them in my cameras, which I locked to ensure I didn’t accidentally move them around.
Easily the most time-consuming part of this project was the likeness itself. I found myself constantly second-guessing the anatomy. I’m sure, had me the patience, I would still be tweaking it today. The most challenging was probably hair because it was very technical, and tedious. Like everything else, it took around 10 iterations (each which took quite some time) to arrive at a look that was both efficient (enough) and usable. With all the boring and often fruitless repetition, it can be really tempting for me to abandon my current project and start something new, or get locked into an endless cycle of tweaking. My method of coping with this desire to discard, redo or endlessly tweak a project is just finding new projects or parts of the project to be excited about. With a growing excitement for a new project or part of my project, I’ll generally become more inclined to finish what I’m stuck on and move on to something new. This more or less guarantees I’ll never do something even close to perfect, but I’m quite satisfied with just finishing things for now.