In this project I did my own rigging instead of using character studio, cause this way I had more control about it, and it had been better for me to learn, that was really the purpose of this project. I learned a lot from this two guys, www.keesrijnen.com and www.paulneale.com, so I think I have to mention them.
Really there's not too much I can say in a tutorial like this. I've done IK legs, a spline IK for the spine and IK-FK arms (the way to do this is to create 3 arms for each, one working in IK, other working in FK and the third one, that is the real arm, takes the position from one or from the other depending on a value of a spinner I have). For the facial rigging I also used bones and some morphers, but I didn't like the result so the next time I will do it a bit different (with bones and morphers too, but in a different way).
I think the strangest thing I've done in this rigging are the breast bones. I was trying to simulate the real breast movement, so when she's looking down they tend to center and fall, when she's looking up they tend to separate and flatten and when she moves an arm up they have to stretch too. I used a combination of morphers and this bones, that where rotated inside or outside depending on the body's position.
The skinning was a really complicated part, cause I was using max 6, and all the cool new tools that max 7 have are really useful. If you want good deformations it's impossible to do it just setting the vertexes weight in the skin modifier, and much more if you can't work with a low res mesh cause there's not skin wrap available yet. So you have to create morphs everywhere to have good deformations, but there wasn't a skin morph yet in max 6, so I had to do it myself.
I created helpers in all the bone joints where I wanted a morph to control their deformation, attached to the upper bone and with an orientation constraint to the lower bone. Then I created lots of scripts to control the % of the morph target depending on the angle between two bones (for example, for the knee I used the angle between the upper leg and the lower leg). I had to use expressions like this:
r = (($Help_Morph_E_Genoll.transform * inverse $Help_Morph_E_Genoll.parent.transform).rotation as eulerangles).z;
if (r > -1.17934) then r = -1.17934;
final = -((r+1.17934)/150.628)*100;
This is for the left knee. The Help_Morph_E_Genoll it's the helper I created to control the angle between the lower and the upper leg, and the second line give me that z angle, comparing it's z rotation with its parent (the upper leg) z rotation. The other two lines are just to make the result move from 0 to 100, cause this result affect the % of the morpher that I use to make the left knee deform well.
This now it's probably obsolete, cause with skin wrap and skin morph of max 7, and also that new helper (now I don't remember the name) that can calculate the angle between two objects all this things can be done much easier and better, but I suppose there's lot of people that still don't have max 7, so this can be a solution.
The more complicated unwrapping, texturing and material part was the body for sure, cause lots of the clothes are procedurals or very simple textures. The jeans are the only other part complicated, and maybe her snikers, but I used more or less the same system for all of them, so I will explain the body.
I started with unwrapping. I did a texture for the head and another for the body. The head was "easy” to unwrap, just a cylindrical mapping and moving the UV coordinates to make it as clean as possible. The body it's a bit more complicated, cause you need more than one uvw map. I used one for the body, one for each arm, one for each hand, one more for each leg and finally one for each foot, all cylindrical. The way to do it is selecting the faces you want (body for example) and adding the uvw map modifier, then a poly select where you select the new faces (an arm) and another uvw map for that new faces, and so on. So you finish with a stack like this:
+ Uvw map
+ poly select
+ Uvw map
+ poly select
+ Uvw map
+ Editable Poly
Then you just have to add an unwrap modifier and now you're able to delete all that uvw map and poly select modifiers, and start working on the unwrap modifier, trying to finish with the UV as clear as possible.
I used Photoshop to create the body and head textures. Basically I just used diffuse, bump and specular maps. I've started with the bump map, using lots of images, the clone stamp tool and lots of blurs to create a kind of collage of the head and the body in b&w. Once I had the bump, I put it as an overlay layer and started painting colors to create the diffuse map. I used a base color, and then some darker tones, some lighter tones, some more red, or more blue, just depending on what I was painting, and finally I painted some spots, wrinkles, veins… And finally I used that diffuse map to create the specular, converting it to b&w another time and painting lighter or darker some parts depending on the specularity I wanted on them.
Finally for the material, I used that maps on the diffuse, bump, specular and specular color channels and also I used the luminosity and translucency channels on a brazil basic material, but this will be easier to see in the image than with text.