Community
3ds Max Animation and Rigging
Welcome to Autodesk’s 3ds Max Forums. Share your knowledge, ask questions, and explore popular 3ds Max animation topics.
cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Rig resizing headaches

18 REPLIES 18
Reply
Message 1 of 19
cantinjon
3439 Views, 18 Replies

Rig resizing headaches

I'm having a heck of a time trying to scale the default "marine" rig using CAT to match the scale of my objects. Basically, I need this guy to be roughly 3x larger than he is (mesh, bones etc.). I tried the scale tool... the screws things up. I tried editing the CAT ratios, it screws things up. I even tried the Animation - CAT rig resizing which just ends-up spitting a bunch of errors. I got around this earlier by just scalling down the entire environment the model was in but I can't do this in this case.

I'm not sure why this is so difficult, I'm using 3ds Max 2011... you would think this is a very common situation but I can't seem to find a way of accomplishing this very easy task.

How do I resize a CAT model so everything stays proportionally the same in order to match the scale of the rest of my environment?

Thanks,
Jon
18 REPLIES 18
Message 2 of 19
cantinjon
in reply to: cantinjon

This problem seems to be isolated with the Marine CAT, the others scale up/down by dragging the mouse while still having the button clicked down.

Jon
Message 3 of 19
Anonymous
in reply to: cantinjon

have you used the CAT resizing tool?

from: http://download.autodesk.com/esd/3dsmax/cat-help-2010/index.html

To use Rig Resizer:
1. Add a rig.
2. From the CAT menu, choose Rig Resizer. This opens the Rig Resizer dialog.
3. Click the Add button to open a Pick dialog.
4. Highlight the items to resize and then click the Frame button.
All highlighted items appear in the Objects list, along with the type of object (for
example, Skin Mesh, CATBone). Each listed item has an associated check box; to disable
resizing for an item, turn off its check box.
5. Set the Scale Factor value.
6. Click Resize.

All listed and enabled objects are scaled by the specified scale factor.

hope that helps
Message 4 of 19
cantinjon
in reply to: cantinjon

I have tried that but it generates a lot of errors in a pop-up.

Jon
Message 5 of 19

The Rig resizer appears to have a few issues, and its definitely on my list of "To Fix".

In the mean-time, the reason this script exists is because its pretty difficult to correctly scale a fully rigged & skinned character (as you have seen). This Marine rig is fully set-up and ready to animate, unlike the other CAT rigs which are just bones (no skin).

This situation is not as common as you might think - usually the skin is moddelled in relation to its target scenery, and the rig is simply fitted to the mesh. No need to resize the final, skinned mesh.

You can create the marine sans skinning, by using the Marine_NoBones_NoSkin preset, in which case resizing is simply a case of changing the CATUnits scale.
If it aint broke, hit it with a hammer and then we'll see...
Message 6 of 19
cantinjon
in reply to: cantinjon

I look forward to a solution being figured-out. I think the CAT system is very powerful and hope to use it more extensively in the future.

Jon
Message 7 of 19
Graeck
in reply to: cantinjon

In the meantime, in order to fix the pop-up errors when using the RigResizer script with a skinned mesh, open the RigResizer.ms script file and remove the following lines:

fn BakeMesh obj =
(
local skinmod = FindSkinMod obj;
select obj;
setCommandPanelTaskMode #modify
modPanel.setCurrentObject skinmod ui:true

skinmod.always_deform = false
skinOps.SelectVertices skinmod #{1..obj.mesh.numverts}
skinOps.bakeSelectedVerts skinmod
)


local skinmod = FindSkinMod obj;
select obj;

-- add an XForm modifier
xformmod = XForm()
modPanel.setCurrentObject obj ui:true
modPanel.addModToSelection xformmod

--xformmod.center = (Inverse (getModContextTM obj xformmod)).pos
--xformmod.center.controller.value
xformmod.gizmo.scale.controller.value =
subObjectLevel = 0


After that, scale your skinned mesh in sub-object mode and turn Always Deform in the Skin Modifier off and on again.
My CAT demoreel:
http://www.youtube.com/watch?v=Gfq-4VoeAPU
Message 8 of 19
DavidDustin4627
in reply to: cantinjon

To have to jump through all these hoops is simply inexcusable.
You can make all the excuses you want, but there should be a straight forward way to change the size of a character.
Why should we attempt to adopt CAT rigs when we have these types of issues?
I may be off base here, but this just seems to be a very poor method of execution.
It seems we will need to stay with biped for a while longer till this issue is resolved or I will need to pay someone to rescale the characters I need (pathetic)..
Message 9 of 19
Graeck
in reply to: cantinjon

Calm down. I have resized dozens of characters with CAT. The Rig Resizer tool is great and works very well (if the error is fixed). Rig Resizer not only scales the rig (which can be done with the default CAT tools in Setup Mode without any animation layer applied anyway), but also scales the animation correctly. As I said I have done this so many times, you can be sure it works.

Use the following Rig Resizer script. It was really easy to fix. I have changed a few lines in there so it also works with skinned meshes.

Make sure to unhide all objects that belong to your rig, including skinned mesh, helper objects, custom objects and whatever. Open up the Rig Resizer tool and add all objects. Type in your desired scale value and process.

Note if you have a skinned mesh applied, the rescaling of the mesh will not be finished due to the error that has been fixed in my version of the script. You need to rescale the mesh manually afterwards. To do this, don't simply scale your mesh at object level. Scale it in sub-object mode (by selecting all polygons) with the world pivot. Also you need to uncheck and recheck the option "Always Deform" in the Advanced Parameters of the Skin Modifier.

Hope this helps.

On a sidenote, resizing rigs is not easy to do at all. I think we can be happy we have such a resizing tool at all.

Here's the script...

www.graeck.de/showroom/Rig%20Resizer.ms
My CAT demoreel:
http://www.youtube.com/watch?v=Gfq-4VoeAPU
Message 10 of 19
tyree_10
in reply to: cantinjon

to dustin you might want to hold off on your critiques about cat until you have actually used it. you really cant compare biped to cat. its really like comparing a typewriter to a computer. they operate at levels that are not equal.

you have to either use the script or you could always resize the rig the old way. scale the bones in setup mode and reskin the mesh
Message 11 of 19
DavidDustin4627
in reply to: cantinjon

to dustin you might want to hold off on your critiques about cat until you have actually used it.


Tyree, you are making the assumption I have not used CAT. I have and I like it.
My comment was directed to how AD implemented it.

We are not much into character animations (a very small portion of our work is character related).
We have to use characters for some projects.

One should not have to jump through hoops to use a tool that was released and touted by AD.
That is my point
Message 12 of 19
tyree_10
in reply to: cantinjon

from that point of view it would be a hassle. Im thinking your constantly animating characters. for your situation you have a valid point
Message 13 of 19
DavidDustin4627
in reply to: Graeck

I tried following the instructions you posted on one of the axyz models provided with Max 2011. Everything was unhidden and unfrozen. First I unchecked "Always Deform" in the mesh. Then I scaled the bones by 200% with the Rig Resizer. Then I grabbed the mesh, went to polygon mode, and grabbed everything. Then I put it in world pivot and scaled that by 200%. Then when I went to look at the results the rig and the mesh were the same size but they were no longer aligned. I tried to manually realign the bones and the mesh with several different approaches, however every time I did the models envelopes would be off. The feet had parts of the leg attached to it, the wrists had similar properties, etc. Can it be that the rig resizer causes the loss of envelope settings? That would almost ruin the purpose of rescaling a model. If you know why these problems are happening feedback would be much appreciated. I have to make deadlines so I don't have much time to continue messing with these. If you would like to I could pay you to rescale them for me. What are your current rates? PM me or reply here with contact information.
Message 14 of 19
zeroes
in reply to: cantinjon

In fact resizing a skinned biped rig requires complex work arounds as well
Message 15 of 19
jhn
in reply to: cantinjon

There is a way to scale characters in CAT with an animation layer.
Somehow scale inheritance is linked to an animation layer. So you have to set all scaling inheritance on. There's a simple maxscript to fix that, please note you have to be on an active animation layer.


local theNodes = selection.CATParent.CATRigNodes
-- Set scale inheritance to all nodes!
for n in theNodes do setInheritanceFlags n #all


This fixes the inheritance problem, that by default scaling inheritance is set to off (why I don't know it doesn't make sense either).

But for some rigs this only solves part of the problem. Why because of "Additive To Setup" is turned on. It's a nice thing to have, but it can't follow scale anymore, because the setup controller determines the position/scale of an object. If there are no special controllers in you used in the setup controller layer, you can safely switch this of (beware you're animation clips or whatever pose you saved before will be unusable after that, so it should be a design decision!).

Now how to switch all the Additive To Setup options to of is something I scratched my head over for a long time, but finally I found in witch interface this setting is set.

-- Turn additive to setup layer off!
for f = 1 to selection.CATParent.CATRigLayerCtrls.count do
(
try (
$.catparent.CATRigLayerCtrls.AdditiveToSetupValue = false
)catch()
)


You'll have to do some testing and play with creating a new layer and run the inheritance script after first applying the additive script. I have a some character now that scale during animation and all stays in one piece. One problem you have is that the hiphub doesn't scale in position when you scale from the ground plane for example, you'll also have to move the hub upwards to compensate. You can add a bone below the hips and parent the hips to it, but then you'll loose the cat motion as it breaks.

Hope this is of some help to someone.
I like CAT but I'd also like to see it gets some serious TLC,

-Johan
Message 16 of 19
StrobFX
in reply to: cantinjon

There is a way to scale characters in CAT with an animation layer.


Hi,

I'm trying to scale a cat rig and it's a nightmare cause I have hundred of parts which are all constraint and some are skinned.

I don't understand how you scale the rig with an animation layer. First my scale inheritance is on and my additive to setup were off. I don't remember if there were like that by default though...

And after that what do you do to really scale the rig? If I scale whatever node even with your setup everything explode...
StrobFX
Message 17 of 19
tyree_10
in reply to: cantinjon

to strob constrained objects tend not to scale right. you may have better luck linking
Message 18 of 19
jonavark
in reply to: cantinjon

hmmm... over a year later and this resize script is still a mess. go figure.
Message 19 of 19
ZiggyMoonshine
in reply to: cantinjon

This issue seems to be on the forgotten list and that's a shame. Hard to believe that, as excellent and powerful as CAT is, I'm still forced to use a self made custom rigging system on shrinking/growing characters, simply because you just can't scale CATrigged characters on the fly (or off the fly for that matter)!

Major gimp.

Can't find what you're looking for? Ask the community or share your knowledge.

Post to forums  

Autodesk Design & Make Report