How to Create a High Quality Game Production Asset

How to Create a High Quality Game Production Asset

Hello there, My name is Eric Harianto and I am a 3D Modeler from Indonesia. I made this game production asset, Victor T. Anderson for my school assignment “Game Production” and incidentally the theme for the assignment was about military, and I am a huge fan of FPS and TPS game that has a very high realistic feeling such as Rainbow Six, Battlefield, Ghost Recon, Splinter Cell Conviction, etc.


With the idea of a military guy, I started to search for references about the military. What kind of military he is, where he usually go to fight, what nationality he is, what kind of a person he is, what kind of weapon that suits him, and so on.


As you can see, mainly I was inspired by the American military because in my opinion American military is more popular nowadays because we always see it in movies and games.

High Res Sculpting

image04Proportion is the key because it will determine what the character will look like later, I made sure the proportion is perfect even though I might change it later to match with the size of the equipment that he will wear. All sculpting was done in ZBrush except the hard surface objects because I found it easier to model in a traditional 3D programs like Maya or 3DMax. They were modeled first as a high poly model and then brought to ZBrush for detail.

The brushes that I mainly use when I sculpt the base body are clay buildup brush, soften brush, and standard brush. After I was happy with the body proportion, I started to make the cloth. I mask the area where I want the cloth is, and then I press the button extract.
This function will allow me to create a new mesh in a new subtool based on the shape of the mask. I used this Zbrush function to create almost all the equipment that my character is wearing (boots, helmet, spectacle, trousers, shirt, shoulder pad, etc). For the folds of the cloth I sculpted manually using a standard brush and soften brush, sometimes I used alpha for small folds on the bending area (armpit, behind the knee area, crotch, etc).

Aspects like a backpack, pouches, helmet, helmet straps, etc. were made from a simple low poly base mesh that I created in Maya then I brought into ZBrush, subdivide it, reshaped it using move brush and sculpt all the major details. I didn’t go too far with the detail now because I prefer to add the fine detail after I retopo and unwrap all the high res model so that I can get a cleaner result and more control.

Once all the large forms and detail were done, I retopo all the model that I have created one by one in ZBrush using Zsphere and then I exported it to Maya to do UV unwrap. Once I have unwrapped all the model, then I brought it back to Zbrush and subdivided it a couple of times.

Using project I then project all the detail from the previous mesh across to the divided version so that I have more ability and more topology to sculpt the fine detail and since I have unwrapped the mesh, when I use the noise maker (Surface > Noise) I can press the button “UV”, so the noise will appear on the mesh according to the mesh’s UV map.


As I mentioned before, I did the retopo in Zbrush using the Zsphere, and then I took the low poly mesh to Maya for unwrapping and organize the UV island. I want to make an In-Game friendly model but at the same time still have a good silhouette of the high res model, so I am targeting below 30K tris. The base character model came out at 25.941 triangles which are a good triangle budget.

Arranging the UV layout is important because it can make your texturing easier if you arrange it properly.

Arranging the UV layout is important because it can make your texturing easier if you arrange it properly. You have to make it as tight as possible and make sure the UV island is not touching with each other or the texture will overlap. Spend some time arranging these islands into a nice UV Layout but make sure you do not stretch your UVs too much. You can check your model’s UV with a checker material.

This character model was set out with two UV sets because if I squeezed it into 1 UV set, the texture resolution would be very low and pixelated. I gave more UV space to high priority aspects such as the face, backpack, and weapons. A less important subject such as random belts and the side of an object that can’t be seen get less space. I also arranged the seamline on a place that usually already have the seam or in a hidden place (armpit, crotch, inside the helmet, etc)


For the texture of this character, I used Normal map, Diffuse map, Translucency map, Gloss map, Specular map, and Ambient Occlusion map. Normal map and Ambient Occlusion (AO) map were baked from the high poly model onto the low poly model using XNormal. The Diffuse map was a combination between painting, photo bash and created manually in Photoshop. Sometimes I used Zbrush polypaint to avoid the seamline. Specular map, gloss map, and translucency map were made by modifing the color and level from the diffuse map.

Related Link:*** Passion first, work second***

To get a better result of texture, I tried to give depth and bump information to the diffuse map by playing with the level and blending option of the AO map and normal map; then I put them on top of the diffuse map. This will give good bump information and enhance the detail of the Diffuse map, especially the face area.

I took a lot of times in this texturing part as this will determine the final product of my model. Reference is the key to getting a realistic shader, put a lot of attention on how much specular it needs to get a realistic metal looks, how much gloss it needs to get a realistic wet feeling, etc. You will face tons of trials and errors at this phase, but you will learn a lot of things as well from the trial and errors.

Reference is the key to getting a realistic shader

The skin is the most complicated material to get a nice soft skin effect in the render. The usual maps were used for the skin such as Diffuse map, AO map, Normal map, Specular map, Gloss map, and also Translucency map. XNormal is such a great software as it can help me to get a good translucency map from the thickness map that I have baked in XNormal. This would mimic the slightly transparent skin areas such as ears, nostrils, and eyelids.

After a bunch of experiments and trials and errors, this is the result of my game character.

Raw footage from Marmoset Toolbag (without lighting) Footage from Marmoset Toolbag with lighting set up and posed

Final Presentation in Marmoset Toolbag

Finally, the character was done, Victor T. Anderson, an American assault soldier. I am satisfied with all the details on my character and I definitely learnt a lot from this project. Special thanks to my friends and lecturers that have helped me by giving tons of critiques and comments and 3Dsense Media School Singapore that have given me the chance to do this assignment.