I’m working on a mod called Tales from the Galactopticon, and we needed a hero character. Since we just recently finished, I thought I’d share the steps we went through in case any of you guys are interested.
First came this concept sketch which I sketched in ballpoint at work, then scanned and colored on the computer:
Later, I did this refined concept, which I traced over some HL2 citizens in model viewer to get a feel for the Valve biped skeleton, and change up some of the details of the character:
The next thing we needed was a high-poly version of the model. To start with, I created a basemesh in Cinema 4D–an undetailed, all-quads version of the character to be used in a sculpting app like Zbrush or Mudbox. The only picture I have of the basemesh isn’t wearing any pants. Don’t read too much into that.
Next, I sent the basemesh to my bro Uberslug for sculpting. He created a face for the character based on the concept art (and Clint Eastwood) and added all the necessary folds and weight to the clothing. I also made some high-poly shoes in Cinema 4D, using subdivision modelling.
His job done, Uberslug sent me a stepped-down version of his high-poly mesh (the full resolution one would have slowed Cinema 4D to an unusable speed if not crashed it outright). From that, I created the final low-poly mesh* that would eventually be used in-game.
*If you are a noob you might be wondering, why not just use the original low-poly basemesh? Why make two low-poly models? The reason is that they are constructed differently and for different purposes–the goal in a basemesh is to distribute the polygons as evenly as possible across the model, and keep them all as close to a square shape as you can. For an ingame mesh, you want to concentrate polygons in areas that will deform, and conserve polygons elsewhere.
With the mesh UV mapped, it was time to do the textures. The first thing I did was to use a free program called XNormal to extract the normal maps from the high-poly mesh. XNormal also generated ambient occlusion maps, which I incorporated into the diffuse texture.
Rigging & Finalizing
Solomon looked pretty good in Cinema 4D, so it was time to get him ingame. Facepunch user bloocobalt kindly volunteered to lend his rigging skills.
Shit! Solomon had normal map seams all over his face and arms. I was worried I had screwed up the normal map bake and would have to do it all over again, but the knowledgeable professionals at Polycount told me I just had to flip the green channel.
It worked. Uberslug created this hella cool pose in Garry’s Mod, and he was all ready to be pimped to the masses at ModDB.