- Home /
How to make human models thin or fat?
I would like to make my human model thin or fat depending on the requirement of the game so than the models look realistically thin or fat. I want to do this in run time. Could anyone please let me know how to achieve it? Thank you
Answer by Bunny83 · Oct 02, 2018 at 10:39 AM
There is not generally valid way of doing that since this totally depends on the mesh topology, surface orientation as well as human anatomy. The last one is the most important which is really difficult to encode in a general way. Certain parts of a human body would have to "grow" more than others.
In most cases to "thicken" a model you can just nudge all vertex positions along the vertex normals. However the difficult thing would be by which amount. If you add "3 units" to each vertex a 3 unit thick body part would become 9 units thick while a 90 units thick part would become 96 units since we add 3 to every vertex along the normal. To do this more realistically you would need to scale based on a percentage of the average thickness at that position. However that requires awareness of the surrounding vertices / faces which depends on the mesh topology. So you don't know where the "center" of a body part is in relation to just a single vertex.
So you would need to manually create a lot of meta data to do this half way right. Also as I said not all body parts grow at the same rate, even when you do it as a percentage scale. Parts without much flesh (skin directly on bone) barely grow at all. This includes the head. Other parts grow much faster.
So this question can not be answered since your requirement is "look realistically thin or fat". Most games which have something like that silly big-head mode really just scale and maybe displace the head (which usually is a seperate model) uniformly. This doesn't work for a whole model when it should look realistically. It may somewhat work for very small changes for some specific models.