I have a humanoid model that is 6 ft tall (182cm). I'm using a CAT skeleton rig and the skinning is done.
I want the character's height to be dynamic, meaning making the height of the human model be anywhere from 5'5 to 6'2. How do I go about doing this?
(This character will be used in Unreal Engine 4. I'm familiar with blend shapes, morphs and similar concepts in both UE4 and 3DSMAX).
NOTE: I do not want to scale the entire model smaller or bigger to achieve a difference in height.
I wonder if I just change the length of the knee, thigh, abdomen, chest, hip, neck, upper arm, forearm bones in UE4, but would that break the animation in anyway?
Replies
Longer Answer: You'll want to make sure your bone hierarchy, joint orientation and rotation order matches the unreal mannequin, IF you want to use the animations that are in the marketplace. If you don't care about using the canned animations, you're hierarchy, orientation and rotation order can be whatever you want. BUT they won't accept it as a submission because it won't work with any other animations in the marketplace.
You can use retargeting either in MotionBuilder, Maya/HumanIK or inside of Unreal to remap animation from a wonky rig to the unreal skeleton but that's a lot of work, it's probably better to just start with the standard unreal mannequin as a base. I'm pretty sure you can extract it from unreal or it's available for download in a few places, probably in the animation starter pack, or on the submission guidelines page.
I've used max, biped and CAT with unreal but personally I use Maya for animation now. Epic's ART toolkit is basically CAT for Maya but it only makes bipedal skeletons at the moment. It's great because it creates the skeleton and systems that you need to work within unreal's requirements. Not that you can't go it alone with your own rig or use 3dsmax, but it's the easiest way to get something into unreal and have it work with everything.
The only solution I can think of right now is to create 12 different skeleton rigs and 12 different humanoid meshes for each height, but there has to be a better way.
I'm re-visiting what you said here. Are you saying I can change the length of a bone and as long as I don't change it's rotation the animation I create for that skeleton rig will animate properly without anomalies? Let's say I have a custom mesh, custom skeleton rig and I create a walking animation. Now I change the length of the knee & thigh bones. Do you think the animation will still play properly?
How well they work depends on how much you changed. Obviously if you make a really tall, thin character into a dwarf, the anims will play but probably won't that good, there might be some clipping issues or other things that pop up because of he proportional differences.
Even if the skeletons are different you can use re-targeting inside of Unreal:
https://docs.unrealengine.com/latest/INT/Engine/Animation/RetargetingDifferentSkeletons/