top of page
guardsman_render.png
Guardsman is my final demo reel project. All aspects of this piece were done by me. The character's head and his armor were all modeled in Zbrush, his weaponry done in Maya, and his skin textures done with Texture XYZ maps and Mari.
​
Concept by Seongnim Park.
​
Software used:
Maya, ZBrush, Mari, Nuke, Substance Painter, X-Gen 
Character Modeling and Sculpting
head_sculpt_process_1.PNG
head_sculpt_process_3.PNG
head_sculpt_process_2.PNG
Modeling the character's head is a slow process. What might look correct in ZBrush will not look good in a render from Maya. This entails a lot of back and forth between working in Maya to see how it looks, and then going back into ZBrush to make adjustments.
I also sculpted in a placeholder for the beard so that I can have an easier time when it comes to XGen grooming.
head_model.PNG
head_UDIMs.PNG
Even though much of the character's face will be covered up by a helmet and beard, I still made sure to unwrap his head into 6 UDIM squares. There is no such thing as too much detail in a character's face.
Skin Texturing
The first step is to take the finished, retopologized mesh for the head, and then decimate it in ZBrush. This is a very useful technique since it allows you to take a head mesh that has millions of polygons, but breaking it down to 10-15% of that polycount without losing the sculpting detail and frequency you spent hours on.
mari_skin_process_0.PNG
decimation_master.png
mari_skin_process_1.PNG
I use 15-20% for the percentage of decimation. It generally gives good results. The other cool thing is that you can keep UVs, which is essential.
mari_skin_process_2.PNG
The decimated head mesh is then brough into Mari, and I use normal PBR settings for the start. I import maps from Texture XYZ into the image manager and proceed to carefully use the projection painting tool to add in the skin albedo in a manner that makes sense anatomically. 
texture_xyz_maps.PNG
mari_skin_layers.PNG
Texture XYZ provides you with very useful albedo layers and a foundation for good skin, but I also took extra liberties and didn't solely rely on it for the skin. I had layers upon layers of extra paintwork for more details that couldn't be conveyed just through Texture XYZ such as the redness around the character's eyes, nose, cheeks, etc.
mari_skin_process_4.PNG
mari_skin_process_3.PNG
In a separate channel, I painted in RGB displacement as well for skin displacement pores and details. I focused primarily on the nose and cheek area of this character's face since this is the main part of his face that will be left exposed and visible.
skin_shader_network.PNG
skin_shader_network2.PNG
The shader network is fairly straightforward. I set all maps to Raw in the color space setting, and I make sure that the file path reads that the maps are part of a UDIM sequence. 
Props
The sword and halberd were simple enough structurally to be modeled entirely in Maya. Since these two objects were of lesser priority and importance in the artwork, I decided to texture them in Substance Painter, which is fine for models that don't use more than one UV square. 
​
The helmet and breastplate were more structurally complex with some nuances that were more challenging to model in Maya. I sculpted a rough base for the helmet and breastplate in Zbrush, used Zremesher to get a nice starting point for retopology, and then refined the topology by hand in Maya.
halberd_model.PNG
halberd_substance.PNG
helmet_model.PNG
helmet_substance.PNG
The breastplate was a much more important component of this project. I decided to use a more realistic interpretation and took some creative liberties from the concept. The process entailed adding higher frequency and detail to the textures of the breastplate, which meant that the UVs of the breastplate needed to be separated into three UDIMs.
​
Each UDIM is a UV square that supports up to 2-4k resolution depending on settings. In practice, this means that the more UDIMs there are for your model, the higher level of resolution and detail you can support for your textures.
​
For the breastplate, I decided to texture it in Mari instead of Substance Painter.
breastplate_UDIMs.PNG
breastplate_model.PNG
acid_etched_armor_3.jpg
acid_etched_armor_2.jpg
acid_etched_armor_1.jpg
I spent some time looking at real armor for inspiration. I specifically looked at 16th century armor and etched armor pieces because this time period is most relevant and fits the tone of the concept more than any other era.
alpha_detail_painting.PNG
alphas.PNG
The process of applying the etching onto the breastplate was a matter of how much work was put into the base color map. I used Mari's projection painting tool to drag the alphas across the breastplates, which will become the foundation for every other map. The alphas not only represent areas of higher reflectivity on the breastplate, but they also represent parts of the breastplate that are raised. It comes down to understanding how the black-and-white values are translated to to depict different kinds of visual information, like height, cavities, gloss, etc.
Base Color
basecolor.PNG
Reflection Color
reflectionColor.PNG
Normals
normals.PNG
IOR
ior.PNG
Roughness
roughness.PNG
Lighting
guardsman_GrayClay.png
guardsman_LightingPass.png
To accurately match the lighting and colors of the concept artwork, I had to use a much more complex and precise lighting setup that involved more than 20 different light sources. I typically do not use the 3 point lighting setup since it is not sufficient for the more visually complex and nuanced lighting of highly stylized concept art. 
lighting_setup.PNG
lighting_AttributeEditorSettings.PNG
lighting_precisionExample.PNG
For very surgical and precise application of lights on certain parts of the character, I set the "Directional" value to something very high, like 0.8 - 0.98. This effectively turns the light into a laser that allows you to apply light onto a very small and concentrated area of your model. If you set the "Directional" too low, your light becomes very washed out and your model maybe lit too much, like he is outdoors in a sunny day. This technique is helpful for applying nice rim lights onto the edges of a model.
If you feel that this technique creates lights that are too strong and unnatural, reduce the "Directional" value ever so slightly and also reduce the "Intensity multiplier" value gradually. Making these slight adjustments is key to nailing the right lighting setup. 
​
Being patient with the lighting controls is key. If the lighting is not good, you will have a much harder time in compositing.
XGen and Hair Grooming
xgen_guardsman.PNG
When generating guides for XGen, I make sure to not use the entire mesh of my character's face as a starting point for the descriptions. I break up the facial hair of the character into separate descriptions, so for example, the left side of his moustache all comes from a mesh that is on the left side of the character's face.
Xgen_quadDraw_1.PNG
I use the Quad Draw tool in Maya to draw in meshes onto the character's face. These meshes will be the foundation for my XGen descriptions. By separating them into different descriptions by mesh, it gives me maximum levels of control and precision with XGen hair grooming.
Xgen_quadDraw_2.PNG
Xgen_quadDraw_3.PNG
Startingbeard.PNG
During this stage, I am solely focused on matching the silhouette and shape language of the beard and moustache. This character's facial hair is a major part of his identity, so this stage is very important.
​
Nailing the shape language early on is also important since getting this stage right is integral to making the XGen modifiers look good as well.
Xgen_beard_modifiers.PNG
Xgen_beard_modifiers2.PNG
When the guides are correct and look accurate to the concept, I begin the process of adding modifiers to the descriptions. I add in these modifiers in a tiered format, with increasing layers of clumping and noise.
​
Layering the noise and clumping in this manner adds a heightened sense of complexity and realism to the hair.
Compositing
RAW
guardsman_Raw.png
FINAL LOOK
guardsman_render.png
Compositing a final raw render is a delicate procedure. The primary purpose of this stage is to identify and fix logical errors in the way light and shadow works on your model, downplaying the unnatural, perfect, computer-generated look of your render, and adding in layers of look development that elevate the visual fidelity of your work.
Z-Depth
zdepth_pass.png
zdepth_node_setup.PNG
No blur
Blur
guarsdman_side_by_side_blur.png
Rendering out a Z-depth Pass in your multichannel EXR file is very important. A Z-depth Pass in a separate shuffle channel also can function as a mask to add a sense of depth and 3-dimensionality to your atmosphere effects such as smoke, dust particles, etc.
​
​
Additionally, the Z-depth pass allows Nuke to accurately assess the range and intensity of the blur effect with the ZDefocus node. This is a very simple setup that makes a big difference in establishing a greater sense of depth and cinematic look to your renders. 
Xgen_VolumeFog_1.PNG
The Z-Depth pass comes into play here in this section of my node network. With the Z-Depth as a mask, I can incorporate a fog effect into the render that has varying degrees of density and intensity based on the Z-Depth.
Xgen_VolumeFog_3.PNG
No mask
Xgen_VolumeFog_2.PNG
Masked
guardsman_NoMaskedAtmosphere2.png
guardsman_NoMaskedAtmosphere.png
LookUpTable_1.PNG
LookUpTable_2.PNG
The final stages of my compositing always involves film grain, and incorporation of a LUT. This part of the compositing process brings everything together and turns the render into a presentable, cinematic, finished image.
guardsman_render.png
concept_6.jpg
bottom of page