A CAT 2.x/3.x 'manual' for on-line and off-line use

Why? (breathe, Ger, breathe... Ummmm [lotus])

[huge rant deleted]

Yes, I sometimes doubt my own sanity for having spent about a small sportscar's worth on hobby software over the years (and still continue doing so... I'm a bird. No, I'm an airplane...) I have one huge complaint. Out of all the graphics companies I've purchased software from, the CAT boys have been the only ones to never produce that one elusive part which separates the boys from the men when it comes to products: a manual. And considering their pricetag - they haven't exactly been the cheapest gadget, not by a long shot. Okay, so I also bought more expensive stuff, anyway, the point is: from anywhere between 7K EUR and 20 EUR, they have been the only manual-incapable ones.

Sure, there was a good attempt at one from back in the days of CAT 1.4 but following the early 2.x versions it was replaced by a Wiki, which was devastating in it's silence. Yes, it was updated. At the same pace that took the world from dinosaur to human domination.

A huge pain, especially when you're using CAT on a laptop while travelling (heck, it's my hobby, so I have odd 'working hours'), so I really liked that on-line help file, even while it was a little crippled. That was when I still admired the CAT guys.

Nowadays, I associate CAT developers with car tires, Mandela style.

Anyhow, enough of a rant as otherwise the BBC guys at the censor desk get calluses on their Beep Button Finger.

This stuff might be handy for you

The work you see before you is an amalgam of CAT 1.4, 2.4 / 2.5x and the few CAT 3 wiki updates; I use this file as an off-line help document (no, my dear, I am not on-line all the time when I find time to work on my hobby, so I want off-Net documentation to go with my tools.

Publishing the content below has been too long in postponing from my side as well, as this gathering work was largely done back in October 2007, but I never made the move to put it on-line, until today. I was (and am) lacking the 'happy thoughts' I otherwise associate with putting something on my sites.

I hear Autodesk bought CAT. Let's hope they do a better job at the manual, in due time. And cut off some cojones while they clear the LZ. When you guys find this here: it is, to the best of my knowledge, the most complete CAT documentation available publicly anywhere. YES, that includes the CAT Wiki, which lacks several helpful chunks which did exist before. (If there's better stuff in private places you can reach, dang, you are so lucky!)

See the various parts of this document, which each show a line at the bottom stating where I got the info from. At the end there's a very crude 'ChangeLog'!

When you have a look and maybe download the off-line copy and wonder why it's in such a disorganized state, manual-structure wise: this is a 'fast job' done by me to help myself out, while a certain set of (bleepards) went AWOL towards Avid/SoftImage and other green pastures. The structure is largely based on the order which I found in the CAT 2.4 off-Net CHM manual, mixed in with some good CAT 1.4 bits and Wiki additions. In short: a mess. You'd almost think I'd been at it in my spare time, that level of disorganized can't happen by accident, now can it?!?!

In closing....

Meanwhile, I hope you find this file as useful as I have till today. My apologies for the rant just there, but the worries about the continuity of CAT have taken a lot of the fun (and time!) out of it - the only reason I am still around is that I have not found an equivalent package to help me with my (multi-pedal) animations. Which says something about the CAT concept (it's that good), but the execution is, alas, not on par. Now I'll shut up and leave you with the manual, or rather the bits and pieces which try to constitute one.

Enjoy, while I weep silently.

Main Page

Image:SoftimageCATLogoBig.jpg

Welcome

TABLE OF CONTENTS

Getting Started

Recent Changes in CAT

Videos covering CAT Functionality

How Do I... ?

Rigging with CAT

Animating with CAT

Saving and Loading Poses and Animation

CATMotion

Working With Motion Capture Data

Importing and Exporting Data

Motion Extraction Node

Working with Muscles

Utilities

Tips and Tricks

MaxScript with CAT

Known Issues

FAQ


TOC - Table of Contents

Retrieved from "CAT 2.4 CHM help file (local)" + "http://cat.wiki.avid.com/index.php/Recent_Changes_in_CAT" + Retrieved from "CAT Muscle 0.7 BETA CHM help file (local)"


Welcome to the online Wiki for CAT™!

Wiki

All of CATs documentation has been moved into and online wiki. This enables us to do faster more frequent updates.

Support

The great thing about having such a talented user base is that they have great ideas! CAT's speedy and dramatic development is in part the result of having so much valuable feedback from all the artists using our software.

Your first port of call for technical support is our active forums.

CAT Forums (http://www.catoolkit.com/forum/)

For direct support from the CAT support team and its developers, or if you have support issues that are sensitive or time-critical, please email us at techsupport@catoolkit.com

CAT3 has been released and here are a list of the changes in CAT3.

Changes in CAT 3

General Information

More information on the CAT product can be found at the catoolkit.com website. CAT Website (http://www.catoolkit.com)

To request more information on the product, demos, evaluations or or PR opportunities, please email us at info@catoolkit.com

Looking forward to hearing from you.

All the best,

Philip Taylor

Product Manager

Retrieved from "http://cat.wiki.avid.com/index.php/Main_Page"


Copyright/Disclaimer

No part of this publication is to be reproduced in any form whatsoever, for any purpose (except as is explicitly allowed at law).

Character Animation Technologies Limited makes no warranty, expressed or implied, as to the suitability of these materials for a particular purpose. They are general in nature, and are provided on an "as is" basis.

Character Animation Technologies Limited may revise and improve its products at any time. This publication describes the product as at 16 August 2005. It may not reflect the product after that date.

Copyright © 2006 Softimage Co. All Rights Reserved.

Retrieved from "http://cat.wiki.avid.com/index.php/Copyright/Disclaimer"


Getting Started

About CAT

Downloading and Installing CAT

Using CAT's Licensing System

Uninstalling CAT

Restrictions on Unlicensed Versions

Configuring Multiple Network Adapters

Setting up Network Rendering

Please note:

Retrieved from "http://cat.wiki.avid.com/index.php/Getting_Started"


About CAT

CAT is a Character Animation plugin for 3dsmax. CAT is owned by Softimage a subsidiary of Avid Technologies.

CAT has been on the market for 3 years and is developing very fast.

CAT is quickly becoming a standard in the animation industry with important studios such as Relic Entertainment, Rainbow Studios, Relentless Software, Flagship Studios, Remedy Entertainment, Encore Hollywood, Obsidian Entertainment, Terminal Reality, Digital Pictures Iloura, PRPVFX and many more already using CAT in their pipelines.

The great thing about having such a talented user base is that they have great ideas! CAT's speedy and dramatic development is in part the result of having so much valuable feedback from all the artists using our software.

All the best,

Philip Taylor

Product Manager

Retrieved from "http://cat.wiki.avid.com/index.php/About_CAT"


Downloading and Installing CAT

Once you have purchased a license of CAT, your catoolkit.com profile will be updated and you will then have access to download the full versions of CAT.

Depending on the type of license you purchased, you will be able to see a different set of downloads.

Image:Downloading.jpg

catoolkit.com downloads page

If you have purchased a Full Commercial version of CAT you will be able to see the "Commercial Downloads" section. If you have purchased a Student, or Faculty version of CAT you will be able to see the "Student/Faculty Downloads" section.

You should select the CAT download that corresponds to the version of Max that you will be working with, and download the CAT Installer.

Table of contents

1 Installing CAT

1.1 Page 1: Introduction

1.2 Page 2: EULA

1.3 Page 3: Authorize CAT

1.4 Page 4: Enter Serial Number

1.5 Page 5: Enter Auth Key

1.6 Page 6: Authorisation Options

1.7 Page 7: Get Auth Key Button

1.8 Page 8

1.9 Page 9: Choose Install Path

1.10 Page 10: Finished

Installing CAT

Page 1: Introduction

Image:Installer1.jpg

Page 1 of the installer. Press 'Next'.

Page 2: EULA

Image:Installer2.jpg

If you have read and agree with the EULA, check on the checkbox and press 'Next'.

Page 3: Authorize CAT

Image:Installer3.jpg

If this is the 1st time for you to install CAT2 on this computer, and you wish to work with CAT, then select "Yes I want to Authorise this CAT installation".

If you are have not already authorised this machine, or if you plan on using this machine for rendering purposes, or you wish to open max files that contain CATRigs, then select "No, I do not want to Authorise this CAT installation". This will mean that the installer skips the installation process and goes straight to Page 9

Page 4: Enter Serial Number

Image:Installer4.jpg

Enter the serial number that you received when you purchased CAT.

Page 5: Enter Auth Key

Image:Installer5.jpg

If you have already received an Authorisation Key, then select "Yes I do have my Authorization Key"

Note:

This is not your "Serial Number"

In most cases, you will not have your Authorization key, so simply press 'Next'.

Page 6: Authorisation Options

Image:Installer6.jpg

Page 7: Get Auth Key Button

Image:Installer7.jpg

There is a button in the middle of the page. Press this button to perform automatic online authorisation.

Page 8

Image:Installer8a.jpg

the CAT Installer will connect to the online licensing system and retrieve your Authorization key.

Page 9: Choose Install Path

Image:Installer8b.jpg

The installer displays the default path for your Max8 installation. If you have installed 3dsmax in a different folder than the one displayed, then please press the "Change Installation Location" button and browse to find the correct path.

Page 10: Finished

Image:Installer9.jpg

Press "Exit" to quit the installer.

Retrieved from "http://cat.wiki.avid.com/index.php/Downloading_and_Installing_CAT"


Using CAT's Licensing System

With CAT's licensing system we have done our very best to protect our software and provide as little inconvenience as possible. We have found that most problems could have been avoided with a more solid understanding of how the system works, so please read on!

Table of contents

1 Managing Your CAT Installs

2 The License Manager

3 Moving CAT licenses from one computer to another

3.1 To Activate your CAT License while online

3.2 To Deactivate your CAT License while online

3.3 To activate a CAT2 license when offline

3.4 To Deactivate a CAT2 license when offline

4 See also:

Managing Your CAT Installs

When you first purchase CAT2 you will be provided with a serial number. This number is important! Please store it somewhere safe.

You will only be provided with one serial number for many different installations of CAT. As you purchase additional licenses we increase the number of machines that can share that serial.

You can install CAT2 with a single serial number on as many machines as you like. Once installed you can then use the license manager to move your licenses around the network at will. Of course you can only have as many machines activated as licenses you have purchased!

The licensing is managed from the License Manager, found in: START Menu/All Programs/CAT/License Manager. It works best when you are online. As long as you are online, you can activate and deactivate instantly, as often as you like. If you are offline, you have 2 options. 1, you can use our website licensing features www.catoolkit.com/licensing.asp, or the manager can produce an email for you to send to us. Unfortunately, in this instance you will have to wait for us to process manually. This will be done within the next 24 hours (usually sooner).

If your computers are connected to the internet, you can move licenses from one computer to another quickly and easily using our license manager. The license manager connects to our database and manages allocation and de-allocation of licenses form your computers.

The License Manager

Image:LicMan1.jpg

Company Name: This is the name of your account with CAT. Typically this will be the company name that you provided when you purchased CAT. If you didn't provide a company name it will most likely be your name.

Current Serial Number: This is the serial number that was last entered. If you have just installed CAT it will be the serial number you entered when you installed. If you have more than one serial number you can enter a new one here.

Note:

CAT1 serial numbers will not work with CAT2!

Computer Name: This is the name of your computer as entered in System in the Windows Control Panel.

Maximum Installs: The maximum number of CAT2 licenses that you can have activated at any one time. If you need this number to increase please buy another license :)

Current Auths: The number of machines that currently have an activated CAT license. If this number is less than Maximum Installs then you can activate right away.

License Manager list box: This lists the computers on the network that currently have active CAT licenses and what date they were activated.

Activate License: Press to activate the license on your current machine.

Deactivate License: Press to deactivate the license on the current machine.

Refresh: Use to update the License Manager list box.

Moving CAT licenses from one computer to another

To move a CAT license from one computer to another, you simply need to deactivate the license on the currently activated computer, and then you can activate the license on a new computer.

To Activate your CAT License while online

To Deactivate your CAT License while online

To activate a CAT2 license when offline

Image:OfflineAuth.jpg

Image:OfflineAuthWebPage.jpg

To Deactivate a CAT2 license when offline

Image:OfflineDeauth.jpg

Image:OfflineDeauthWebPage.jpg

Tip:

When using CAT1 or CAT2, if you change your network card or hard drive your licensing will break and you will need to reactivate your license. To get going again just run the CAT license manager and reactivate your license!

See also:

Restrictions on Unlicensed Versions

Configuring Multiple Network Adapters

Retrieved from "http://cat.wiki.avid.com/index.php/Using_CATs_Licensing_System"


Restrictions on Unlicensed Versions

If CAT is installed, but not authorised, or you have a demo version of CAT installed, and the scene has been saved more than 20 times, you will have the following restrictions.

You cannot:

You can:

We have made sure that any work not related to CAT can continue even if your CAT installation is not authorized. This means that you can for example continue to edit your scene and perform operations to non CAT elements of your scene. You can also install CAT on all your rendering machines without needing to worry about licensing. See Installing CAT Without licensing.

Retrieved from "http://cat.wiki.avid.com/index.php/Restrictions_on_Unlicensed_Versions"


Configuring Multiple Network Adapters

CAT’s licensing system uses your network adapter to identify your computer. Every network adapters has a unique number that is different on every network adapter in the world. You may experience problems using CAT if you need to temporarily install a network adapter to gain access to the internet during the authorization process. An example of this would be installing a wireless adapter into a laptop that normally uses a normal cable network adapter, to enable access to a wireless network.

The problems are caused by CAT using the temporary network adapter to authorize CAT. Later, if you remove the network adapter, then CAT becomes unlicensed, because it cannot see the network adapter that is originally used during install.

Note:

You must have at least 1 network adapter installed in your computer to be able to use CAT. If you need to temporarily install a new network adapter in your machine during installation, it is important to make sure CAT uses the same network adapter that will be installed when animating using CAT.

To resolve any problems you need to make sure that CAT is using the network adapter that is permanently present and active on your machine.

To set which network adapter CAT uses for licensing:

Image:MyNetworkPlaces.jpg

Image:NetCards1.jpg

Image:NetCards2.jpg

Retrieved from "http://cat.wiki.avid.com/index.php/Configuring_Multiple_Network_Adapters"


Uninstalling CAT

To Uninstall CAT, run the Uninstaller found on the Start Menu.

Image:StartMenuUninstaller.jpg

To run the CAT Uninstaller, press on the start button, navigate to the CAT menu and select 'Uninstall CAT2'.

Image:Uninstaller.jpg

When you press the 'Uninstall' button, all files that were put on your computer during the original installation of CAT will be removed.

Note:

Any ini files, new rig files, and scene files that have been created since you installed CAT will remain on your hard drive. In your <3dsmax-folder>/plugcfg/ folder you will see a CAT folder remains that you may wish to manually delete after the uninstaller has completed.

Retrieved from "http://cat.wiki.avid.com/index.php/Uninstalling_CAT"


Setting up Network Rendering

CAT needs to be installed to be able to open scene files containing CAT. You can render scene files containing CAT using as many machines as you like. You do not need to authorize CAT for rendering or viewing of files. During installation, you can simply not authorize the machine, and skip that whole part of the installation process.

Installing CAT on a Render Machine

Image:Installer3.jpg

If you plan on using this machine for rendering purposes, or you wish to open max files that contain CATRigs, then select "No, I do not want to Authorize this CAT installation". This will mean that the installer skips the installation process and goes straight to Choose Install Path

Network Plugins Folder

One common setup for network rendering using 3dsmax is to keep a single repository for all the plugins that are loaded by the render nodes. Most plugins, including CAT, only require that the machine has access to the plugin dll during startup of 3dsmax. Sample files and scripts are often not required simply for rendering. You should check for each plugin however that this is all it requires.

 [Directories] Additional MAX plug-ins=C:\Program Files\Autodesk\3ds Max 9\PlugIns\ Network Plugins=\\Server\NetworkPlugins\

The benefit of this setup is that you are guaranteed that all your render nodes are using identical versions of the plugins. It is also easy to update the entire render farm by simply replacing a single plugin file.

Note:

You may also find it beneficial to have all your workstations accessing the common plugin folder also. The difference being that these machines also need to have the latest scripts installed with each update of CAT.

Retrieved from "http://cat.wiki.avid.com/index.php/Setting_up_Network_Rendering"


Recent Changes in CAT / What's New?

Changes in CAT 2.1

Changes in CAT 2.11

Changes in CAT 2.2

Changes in CAT 2.3

Changes in CAT 2.4

Changes in CAT 2.5

Changes in CAT 2.505

Changes in CAT 2.51

Changes in CAT 2.52

Changes in CAT 2.521

Changes in CAT 3

Changes in CAT 3.1

Changes in CAT 3.2

Changes in CAT 3.3

Retrieved from "http://cat.wiki.avid.com/index.php/Recent_Changes_in_CAT" + "http://cat.wiki.softimage.com/index.php?title=What's_New"


Changes in CAT 2.1

Bug Fixes

Changes in CAT 2.11

Retrieved from "CAT 2.4 CHM help file (local)"


Changes in CAT 2.2

Rig setup

Layer System

CATMotion

Clip Saver and Loader

License Manager

Retrieved from "CAT 2.4 CHM help file (local)"


Changes in CAT 2.3

Retrieved from "http://cat.wiki.avid.com/index.php/Changes_in_CAT_2.3"


Changes in CAT 2.4

Table of contents

1 Files

2 Rigging

3 Layers

4 CATMotion

5 Clips And Poses

6 Mocap Import

7 License Manager

Files

Rigging

Layers

CATMotion

Clips And Poses

Mocap Import

License Manager

Retrieved from "http://cat.wiki.avid.com/index.php/Changes_in_CAT2.4"


Changes in CAT 2.5

Table of contents

1 CAT 2.5

2 Changes in 2.5 from previous versions

2.1 Rigging

2.1.1 New Features

2.1.1.1 Scripting Changes

2.1.2 Bugs Fixed

2.2 Layers

2.2.1 New Features

2.2.1.1 Scripting Changes

2.2.2 Bugs Fixed

2.3 CATMotion

2.3.1 New Features

2.3.2 Bugs Fixed

2.4 Clips And Poses

2.4.1 New Features

2.4.2 Bugs Fixed

2.5 Mocap Import

2.5.1 New Features

2.5.2 Bugs Fixed

2.6 Utilities

2.6.1 Batch Exporter

2.6.2 Batch Importer

2.6.3 Pose Mixer

2.7 License Manager

2.7.1 Bugs Fixed

2.8 Installer

2.9 Documentation

CAT 2.5

CAT2.5 is another big update to CAT. We have fixed many critical bugs throughout the software, and a lot of ground work has been done towards preparing for the future.

Throughout the tool a lot of new scripting methods have been exposed. This is because we have many new scripted utilities that required access to more of the C++ methods.

We have taken the problem of facial animation a lot more seriously and actually provided a usable workflow with the Pose Mixer. The pose mixer has been used heavily by our beta testers and this has helped drive the refinement of the tool.

Motion Capture workflow got a huge improvement, with simpler more responsive tools.

Batch Exporting and Importing tools compliment this already very powerful toolset.

Changes in 2.5 from previous versions

Rigging

New Features

Scripting Changes

Bugs Fixed

Layers

New Features

Scripting Changes

Bugs Fixed

CATMotion

CATMotion received a long overdue polish up for CAT 2.5. No significant updates have been made to CATMotion since CAT1 aside from changes made to hubs motion for CAT 2.0.

New Features

Bugs Fixed

Clips And Poses

New Features

Bugs Fixed

Mocap Import

Mocap was never our strong point and although we have had studios creating mocap heavy games using CAT, it was never something that I was happy with or enjoyed demoing. The workflow was clunky and unresponsive. The UI was a disaster with spinners and buttons everywhere, and there was very little interactive feedback. We had many problems with Gimbal locking in the Capture animation dialogue and editing Cam files was a very tedious job that only I seemed to be able to do without tearing my hair out.

New Features

Bugs Fixed

Utilities

Batch Exporter

Batch Importer

Pose Mixer

Designed specifically for facial animation, this tool is going to make using CATBones and poses a very good choice for game developers. It compliments our layer system very well.

License Manager

Bugs Fixed

Installer

Documentation

Retrieved from "http://cat.wiki.avid.com/index.php/Changes_in_CAT_2.5"


Changes in CAT 2.505

Table of contents

1 Changes to CAT 2.505 since CAT 2.5

1.1 Rigging

1.2 Layers

1.3 Clips and Poses

1.4 CATMotion

1.5 Utilities

Changes to CAT 2.505 since CAT 2.5

Rigging

Decreasing the number of vertebrae in a spine can cause a crash

Decreasing the number of bones in a limb can cause a crash

Layers

Collapsing Layers to a new Layer Causes crash

Clips and Poses

Saving Animation on layers with Max IK Chains will crash Max

Loading Mirrored Clips may cause the feet and pelvis to not load any animation

Loading Animation data with the animate button on can cause the animate button state to be incorrect

CATMotion

Rigs using Z-Axis alignment may crash when assigning CATMotion Layers

CATMotion Stepmasks don't mask rigcage movement

Utilities

Pose Mixer requires rig to have IKTargets

Retrieved from "http://cat.wiki.avid.com/index.php/Changes_in_CAT_2.505"


Changes is CAT 2.51

Table of contents

1 General

2 Rigging

3 Layers

4 Clips and Poses

5 CATMotion

6 Utilities

6.1 Capture Animation

6.2 Batch Importer

6.3 Batch Exporter

6.4 Pose Mixer

7 Import Export

7.1 HTR Importer

7.2 BIP Import

8 Installer

General

This release fully supports Max9. CAT now officially supports Autodesk Max7 8 and 9.

Autobacks no longer trigger the "Demo Save Notice" Dialog on the demo builds on Max8 and 9.

Rigging

When loading a rig using the browse command, the viewports are re-drawn immediately.

Limbs were inheriting scale off IK Targets. This caused strange popping in the IK Target if the IKTarget had scale values less then 100%

Changing the number of bones in a limb could cause CAT to crash if the selected bone was being removed.

Changing the number of vertebra in a spine could cause CAT to crash if the selected bone was being removed.

Layers

Collapsing of layers is now fixed. Previously, the collapse would cause a crash at the completion of the collapse.

Scaling of bones on relative layers is now fixed. Previously the scale would be reset with each scale.

Loading Animation data with the animate button on can cause the animate button state to be incorrect

Clips and Poses

When you loaded some animation data with the mirror settings turned on, the feet of your character may not have loaded the animation data correctly. The character may have jumped on side and had no animation keyframes on the feet or pelvis. This bug is actually in the Animation Saver. The animation data was not saved correctly due to a minor bug.

CATMotion

The CATMotion preset saver, and the Clip saver can now save and load cycles with welded/unwelded limb values. This means that if you have created an asymmetrical walk cycle, the saver can save and load this cycle correctly.

If you are working on a rig that is set to Z-Axis alignment, then add a CATMotion layer you may have experienced a crash if your rig contained fingers.

Utilities

Capture Animation

Capture Animation rewritten to use NET ListView controls.

Batch processing of files fixed.

New button added that links to the Wiki help page for this utility.

Automap MaxScript memory allocation bug fixed.

Batch Importer

Batch Importer rewritten to use NET ListView controls

New button added that links to the Wiki help page for this utility.

Batch Exporter

Batch Exporter rewritten to use NET ListView controls.

New button added that links to the Wiki help page for this utility.

Pose Mixer

Double clicks now load pose in 'absolute' mode.

On characters with limbs that did not include IKTargets, the pose mixer was crashing.

New button added that links to the Wiki help page for this utility.

Import Export

HTR Importer

HTR importer keyframe creation bug fixed.

The Importer now creates skeletons that are more closely aligned to that of your CATRig. For example, if your CATRig is X-Axis aligned, then the importer now creates X axis aligned HTR skeletons. This makes the mapping process a lot simpler when using Capture Animation.

BIP Import

Bip File importer height parameter fixed.

Installer

The installer now gives you the opportunity to install plugin file and/or example files. This means that for an experienced user, or when installing on a render node, CAT can be installed with only the essential files.

With changes in the folder structure for Max 9, the installer for CAT now puts all example files in the user folder for the currently logged in artist. This means that if another user logs in, then that artist will not have any example files and will be required to re-install the sample files.

Retrieved from "http://cat.wiki.avid.com/index.php/Changes_in_CAT_2.51"


Changes in CAT 2.52

Changes in CAT 2.52 from CAT 2.51

Table of contents

1 Rigging

1.1 Bugs Fixed

1.1.1 Scale

1.1.2 IK System

1.2 New Features

2 Layers

2.1 Bugs Fixed

2.2 New Features

3 Clip Saver/Loader

3.1 Bugs Fixed

3.2 New Features

4 Motion Capture

4.1 Bugs Fixed

4.2 New Features

5 CATMotion

5.1 Bugs Fixed

5.2 New Features

6 Utilities

6.1 Bugs Fixed

6.2 New Features

7 Script

7.1 Bugs Fixed

7.2 New Features

8 Files

8.1 Bugs Fixed

8.2 New Features

9 License Manager

9.1 Bugs Fixed

9.2 New Features

10 Installer

10.1 Bugs Fixed

10.2 New Features

Rigging

Bugs Fixed

Scale

IK System

New Features

We now have a 'Load Rig' button and a 'Save Rig' button. This is to simplify the user interface for beginners. It is clear how to save a rig because the button is immediately in front of the user.

Layers

Bugs Fixed

New Features

Clip Saver/Loader

Bugs Fixed

New Features

Motion Capture

Bugs Fixed

New Features

CATMotion

Bugs Fixed

New Features

Utilities

Bugs Fixed

New Features

Script

Bugs Fixed

New Features

Files

Bugs Fixed

New Features

License Manager

Bugs Fixed

New Features

Installer

Bugs Fixed

New Features

Retrieved from "http://cat.wiki.avid.com/index.php/Changes_in_CAT_2.52"


Changes in CAT 2.521

Changes in CAT2.521 from CAT 2.52

This release was mainly to fix one bug that was released in CAT2.52. This bug appeared close to the release date and was not picked up before we released CAT2.52. We do our best to avoid releasing bugs in our tools, but if bugs are found, we respond quickly.

Table of contents

1 Script

1.1 Bugs Fixed

2 Files

2.1 Bugs Fixed

Script

Bugs Fixed

Files

Bugs Fixed

Retrieved from "http://cat.wiki.avid.com/index.php/Changes_in_CAT_2.521"


Changes is CAT 3

Table of contents

1 Rigging

1.1 New Features

1.2 Bugs Fixed

2 Layers

2.1 New Features

2.2 Bugs Fixed

3 Clip Saver

3.1 New Features

3.2 Bugs Fixed

4 Motion Capture

4.1 New Features

4.2 Bugs Fixed

4.3 New Features

4.4 Bugs Fixed

5 Utilities

5.1 New Features

5.2 Bugs Fixed

5.3 New Features

6 Script

6.1 New Features

6.2 Bugs Fixed

7 License Manager

7.1 New Features

7.2 Bugs Fixed

8 Installer

8.1 New Features

8.2 Bugs Fixed

Rigging

New Features

skin meshes with a rig.

The CATMode Button was changed from a fly-out to a standard toggle button to toggle between 'Setup Mode' and 'Animate Mode'

Bugs Fixed

Layers

New Features

Bugs Fixed

Clip Saver

New Features

Bugs Fixed

Motion Capture

New Features

Bugs Fixed

CATMotion

New Features

Bugs Fixed

Utilities

New Features

Bugs Fixed

New Features

Script

New Features

Bugs Fixed

License Manager

New Features

Bugs Fixed

Installer

New Features

Bugs Fixed

Retrieved from "http://cat.wiki.avid.com/index.php/Changes_in_CAT_3"


Changes in CAT 3.1

Table of contents

1 The following is a list of total changes made to CAT since the release of CAT 3.0

1.1 Rigging

1.1.1 New Features

1.1.2 Bugs Fixed

1.2 Layers

1.2.1 New Features

1.2.2 Bugs Fixed

1.3 Saving and Loading Clips and Poses

1.3.1 New Features

1.3.2 Bugs Fixed

1.4 Motion Capture

1.4.1 New Features

1.4.2 Bugs Fixed

1.5 CATMotion

1.5.1 New Features

1.5.2 Bugs Fixed

1.6 Utilities

1.6.1 New Features

1.6.2 Bugs Fixed

1.7 Script

1.7.1 New Features

1.7.2 Bugs Fixed

1.8 Files

1.8.1 Bugs Fixed

1.9 Licensing

1.9.1 New Features

1.9.2 Bugs Fixed

1.10 Installer

1.10.1 New Features

1.10.2 Bugs Fixed

The following is a list of total changes made to CAT since the release of CAT 3.0

Rigging

New Features

Bugs Fixed

Layers

New Features

Bugs Fixed

Saving and Loading Clips and Poses

New Features

Bugs Fixed

Motion Capture

New Features

Bugs Fixed

CATMotion

New Features

Bugs Fixed

Utilities

New Features

Bugs Fixed

Script

New Features

Bugs Fixed

Files

Bugs Fixed

Licensing

New Features

Bugs Fixed

Installer

New Features

Bugs Fixed

Retrieved from "http://cat.wiki.softimage.com/index.php/Changes_is_CAT_3.1"

Changes in CAT 3.2

Backwards Compatibility

New Features

Rigging

New Features

Bugs Fixed

Layers

New Features

Bugs Fixed

Retrieved from "http://cat.wiki.softimage.com/index.php/Changes_in_CAT_3.2"

Changes in Autodesk 3ds Max CAT 3.3

General

New Features

Rigging

New Features

Bugs Fixed

Layers

Bugs Fixed

Saving and Loading Clips and Poses

Bugs Fixed

CATMotion

Bugs Fixed

Retrieved from "http://cat.wiki.softimage.com/index.php/Changes_in_Autodesk_3ds_Max_CAT_3.3"

CAT Videos

Pose Mixer

Image:MosMixerVid.jpg

Pose Mixer Video Download and watch the video tutorial.

This video covers working with the Pose Mixer. Setting up rigs, saving poses and then reloading them onto your rig.

Pose Mixer: Complete documentation on the Pose Mixer tool.

Capture Animation

Image:CaptureAnimationVideoThumbnail.jpg

Click to download the video

This video covers working with the Capture Animation utility. Setting up Capture animation Mapping presets saving and then transferring animation between rigs.

Capture Animation: Complete documentation on the Capture Animation Tool.

Retrieved from "http://cat.wiki.avid.com/index.php/CAT_Videos"


How Do I... ?

Sometimes you just want to find out how to do something, without wading through the entire guide. This section is for that purpose.

How Do I Create Rigs?

How Do I Use CAT's Non-linear Animation System?

How Do I Keyframe with CAT?

How Do I Create Walk Sequences?

How Do I Reuse Animation with CAT?

Robot courtesy of Yu Nagasima

Retrieved from "CAT 2.4 CHM help file (local)" + Retrieved from "http://cat.wiki.avid.com/index.php/How_Do_I..._%3F"


How Do I Create Rigs?

How do I...

Load an existing CATRig Preset?

Create a CATRig from scratch?

Name a CATRig

Remove elements from my CATRig

Add limbs?

Remove limbs?

Edit spine rotation weights?

Create an FK Spine?

Copy and Paste Limbs?

Edit my rig interactively in the viewport?

Edit my CATRig mesh?

Retrieved from "http://cat.wiki.avid.com/index.php/How_Do_I_Create_Rigs%3F"


How Do I Use CAT's Non-linear Animation System?

How do I...

Create a layer to keyframe into

Create a layer to tweak existing animation with

Blend between animation layers

Edit the speed and direction of an animation layer and set the Looping options

Transform an animation layer in the viewport

Collapse the layer stack to one layer

Control animation playback velocity with a single curve

Copy/Paste animation layers

Retrieved from "http://cat.wiki.avid.com/index.php/How_Do_I_Use_CAT%27s_Non-linear_Animation_System%3F"


How Do I Keyframe with CAT?

How do I...

Get out of Setup Mode?

Start animating?

Manipulate my rig?

Edit my curves in the Curve Editor?

Create an IK target for an arm?

Blend from IK to FK?

Blend from FK to IK?

Move my arm in IK and rotate the palm with FK at the same time?

Pin my ribcage so I can adjust my pelvis without affecting it?

Work with the Digit Pose Manager?

Animate in Stretchy Mode?

Use retargeting?

Use CAT's IK system?

Use the Foot Pivot system?

Retrieved from "http://cat.wiki.avid.com/index.php/How_Do_I_Keyframe_with_CAT%3F"


How Do I Create Walk Sequences?

How do I...

Get out of Setup Mode?

Edit procedural motion (CATMotion) in CAT?

Load a CATMotion preset?

Remove a CATMotion layer?

Save a CATMotion preset?

Switch on Walk on Spot (to assist with editing your walkcycle)?

Assign a Path Node (to drive your character around the scene)?

Control the stiffness of a horizontal (quadruped) spine?

Show, hide, and reset footprints?

Snap footprints to a surface?

View the output curves for a rig element (e.g. IK target for leg)?

Animate CATMotion parameters?

Retrieved from "http://cat.wiki.avid.com/index.php/How_Do_I_Create_Walk_Sequences%3F"


How Do I Reuse Animation with CAT?

How do I...

Load an animation clip?

Load in motion capture data?

Load in a BIP file?

Save an animation clip

Load a pose?

Save a pose?

Retrieved from "http://cat.wiki.avid.com/index.php/How_Do_I_Reuse_Animation_with_CAT%3F"


Rigging with CAT

Image:NHNZ Ltd.jpg

Image courtesy of NHNZ

The CATRig is the hierarchy that defines the CAT skeletal animation system. It is a highly sophisticated character rig that has been designed so that you can create the characters you want without having to code yourself. The fact that it is mostly written in C++ rather than script means that it is very fast, and includes many features that would be impossible to create using script.

To make the system as flexible as possible we have done our best to keep the system as generic as we can. This is immediately obvious with CAT's modular component structure. A spine could also be a neck. Instead of pelvises and ribcages, CAT has hubs.

Different rig elements can be added and removed from a rig to get the exact skeleton you need for your production.

All rig elements have different functionality built in. For example all limbs have their own, sophisticated IK system built right in; spines have their own powerful procedural spine algorithm; hubs have a system called retargeting, etc.

Each rig also has its own layered animation system, procedural walkcycle system, and clip/pose system. In addition, CAT comes with a number of utilities to manage things like importing, exporting, motion data mapping and ragdoll (physics) setup.

Creating a CATRig

Customising the Geometry on CATBones

Removing Parts of the CATRig

Using CAT's Naming System

Copying and Pasting Rig Parts

Applying Manipulation Gizmos

Configuring the Hierarchy Options

Editing your Rig Interactively in the Viewport

Editing Bone Pivot Positions

Extra Rig Components

Understanding CATUnits

CATRig Elements

Retrieved from "http://cat.wiki.avid.com/index.php/Rigging_with_CAT"


Creating a CATRig

A CATRig can take any form you require. It can have as many spines, heads, pelvises, limbs, fingers, toes and tails as you could ever want. In CAT2 you can now add extra bones too.

CAT comes with a library of rigs of everything from humans to horses, insects and robots.

CATRigs can be created from scratch, but usually it is easiest to load in the rig closest to your requirements and edit from there.

Once you are happy with your creation you can save it as a new preset for reuse later on. This approach has been used right across CAT. Load in the preset closest to your requirements, edit it to suit your purposes and then save the result out as a new preset.

Using CAT you can create the rig you need, in very little time. CATRigs come with their own inbuilt IK system, as well as easy to manipulate spines and tails. Advanced digit controls make it easy to position fingers and toes. By default legs are created in IK; arms in FK. All limb bones can be segmented for twisting bones. Segment twist weights are spline controlled.

Even in Setup Mode the rig is set up so that it can be manipulated intuitively. The arms are in FK and the legs in IK. The pelvis, ribcage and head can all be moved and rotated as expected.

During setup CATRigs can be resized without breaking IK setup etc; perfect for merging files. Resizing is deactivated once an animation layer is created to prevent problems with existing animation.

Tip:

CATRigs can be created from scratch, but usually it is easiest to load in the rig closest to your requirements and edit from there.

[Creating and Editing CATRigs video (http://www.catoolkit.com/support/videos.asp?vID=30)]

To load an existing CATRig Preset:

Image:CATRigLoadMarama.jpg

Image:CATRigLoadMaramaDone.jpg

Marama CATRig Preset

In addition to clicking in a viewport you may also drag. When you drag to create a CATRig, the length of the drag will be approximately the same as the CATRig’s initial height. The initial width and depth will remain proportional to the height.

In the Create panel the Character Setup rollout shows the CATRig's basic parameters.

Character Setup rollout

During creation you can change the parameters. Otherwise, like all 3ds Max objects you can edit the creation parameters in the future by selecting the CATParent object and going to the Modify panel.

Tip:

CATUnits Scale and Bone Length Axis cannot be changed if an animation layer is present.

To create a CATRig from scratch:

Image:CATRigLoadNone.jpg

A CATParent is created.

Image:CreateCATRigPelvis.jpg

A pelvis will appear in the viewport at the default size.

For more information on the Hubs user interface see Hubs

In the Hub Parameters rollout you can add Legs, arms spines, tails and extra bones as required.

Image:CreateCATRigPelvisLegs.jpg

Image:CreateCATRigPelvisLegsSpine.jpg

Image:CreateCATRigPelvisLegsSpineArms.jpg

Image:CreateCATRigPelvisLegsSpineArmsHead.jpg

You will now have a very basic CATRig. All of the example CATRigs have been created using these tools and you can see that you are able to create a vast variety of CATRigs.

You will find that this system allows you to quickly create any rig structure you want.

See Also

Creating a CATParent

Editing your Rig Interactively in the Viewport

Retrieved from "http://cat.wiki.avid.com/index.php/Creating_a_CATRig"


Customising the Geometry on CATBones

Image:CustomisedRigs.jpg

CATRigs with customised geometry

All of the bones in CAT can have their geometry customised and these edits can be baked into the bone mesh. These edits also get saved to your rig preset allowing you define complex rigs with customised geometry and load these presets into new scenes.

Image:EditedHubModStack.jpg

To edit the geometry of your CATBone, you simply need to apply any modifier to the bone and begin editing. You can change the topology of the mesh, or even delete the mesh, and assign a whole new one.

Tip:

You can use the 'attach' command on the Edit Mesh modifier to copy the mesh of a different object in Max.

Image:EditedHub.jpg

Image:EditedHubCllapseModStack.jpg

Once you have finished editing the mesh, you can simply collapse the stack using the modifier panel, or the right click menu in Max.

Image:EditedHubUsCustomMesh.jpg

The 'Use Custom Mesh' setting gets turned on to show that the bone is now using a custom mesh.

Tip:

To revert back to your old mesh, uncheck the 'Use Custom Mesh' checkbox

Retrieved from "http://cat.wiki.avid.com/index.php/Customising_the_Geometry_on_CATBones"


Removing Parts of the CATRig

Elements are removed by deleting. Deleting an element will delete it, and all bones that are part of its local weights group. For example, if you delete a limb, all the bones in the limb, and the IKtarget, and any extra bones that have been added to the rig regardless of whether they have been re-linked to other parts of the hierarchy, will be deleted.

Table of contents

1 To delete the whole CATRig:

2 To remove an arm:

3 To remove the upper body:

4 To remove a digit:

To delete the whole CATRig:

Delete the CATParent.

Or:

Delete the pelvis (root object).

To remove an arm:

Select any part of the arm and delete.

To remove the upper body:

Delete the spine, or the ribcage.

To remove a digit:

Select any part of the digit and delete.

Note:

Individual rig elements can only be deleted in Setup Mode. When in Animation Mode if you select any part of the rig the whole rig will be deleted.

Retrieved from "http://cat.wiki.avid.com/index.php/Removing_Parts_of_the_CATRig"


Using CAT's Naming System

CAT does not define any particular naming scheme. Instead, each rig preset contains a different naming scheme. It is very easy to modify the naming scheme to suit your own productions requirements.

Each bones name is defined by the combination of the CATRigs name, and name of any group the bone belongs to and also the bones local name. Of course, you can set any of the name fields to blank and then this fields will have no effect on the final bones name.

 $<CATRig Name> + <Limb Name> + <Bone Name> + <Bone Seg Name>

The default names given to bones when you create a rig from scratch are only intended as a basis for you to modify and define your own naming scheme.

Table of contents

1 Naming the CATRig

2 Hub Naming

3 Limb Naming

3.1 Limb Bone Naming

3.2 Palm or Ankle Naming

3.2.1 Digit Naming

4 Tail Naming

5 Extra bone Naming

6 Spine Naming

Naming the CATRig

CATRigs are created with their allocated preset name. If you want to have more than one of the same CATRig preset in a scene it is a good idea to give it a unique name.

To change a CATRig name:

Select the CATParent, go to the Modify panel and enter a new name in the Name field in the Character Parameters rollout.

The CATParent is renamed and the entire CATRig hierarchy inherits the new name.

Important Note (Q&A):

lupusanimation: Newbie

Q: I have just found a very frustrating bug with a rig I have been working on. It seems that when I use a muscle strand, and link the start and end controllers to a bone in the CAT rig, I find out some time later, that the CAT bones start to rename themselves and take on names of the muscle strand end controllers. This is causing me no end of trouble with the skin modifier.

I can try to type in the name the CAT bone should have, but the changes do not take. I have tried starting from a new rig, making sure all bones have the correct names. Get things linked up, everything looks like it is correct, but at some point after the skinning begins, I will find that the bones start to rename themselves.

Any clue what could be causing this?

Gräck: Moderator Group

This is actually not a real bug, but an update issue with the naming system in CAT. Are you renaming the bones correctly? Do you type in the name in the default top dialog of the Modify Panel or in the corresponding name box in the CAT rollout?

CAT bones need to be named in the CAT rollout, not in the top dialog of the Modify Panel. It doesn't make any sense to name them there, because each time the rig is being updated anyhow, the name is being generated from the internal CAT system and will overwrite the top dialog of the Modify Panel, actually the name in Max. So always rename your bones in the CAT rollout.

Hub Naming

 $<CATRig Name> + <Hub Name>

Limb Naming

Each limb has a name parameter that you may wish to fill in with an appropriate name.

When you add an arm for example, the new arms limb name parameter defaults to "Arm"

Limb Bone Naming

Limb bones can be divided into segments, and each segment should have a unique name.

Each bone will be assigned a name according to the following scheme.

$<CATRig Name> + <Limb Name> + <Bone Name> + <Bone Seg Name>

If you would like your Right upperarm bone to be called

 $"FredLUpperarm"

Then you should name the CATRig "Fred", and enter "L" in the the limb name field, and enter "Upperarm" in the bone name field.

When the names get added together the following will result.

 "Fred" + "L" + "Upperarm"

Each bone segment can have a customised name too. The Bone Seg Names only become valid when youhave more than one bone segment. The bone seg names default to '1', '2', '3' etc, but you could change this to 'A', 'B', 'C' etc..

Palm or Ankle Naming

The palm or Ankle stores a local name that gets added on to the CATRig name and the Limb name.

 $<CATRig Name> + <Limb Name> + <Palm/Ankle Name>

Digit Naming

Digits are made up of a hierarchy of bones that are all connected together with one digit controller. This is much the same way that limbs work. The digit controller stores a name for the entire digit, and each bone in the digit also stores its own local name.

 $<CATRig Name> + <Limb Name> + <Digit Name> + <Digit Bone Name>

Tail Naming

The Tail is made up of a hierarchy of bones that are all connected together with one tail controller. This is much the same way that limbs work. The tail controller stores a name for the entire tail, and each bone in the tail also store thier own local name. Each bones name is the result of adding together the CATRig name and the tail name and the bone name.

 $<CATRig Name> + <Tail Name> + <Bone Name>

Extra bone Naming

Extra Bone names are much simpler than other body parts. Each Extra bone stores its own name, and this gets added on to the CATRig name.

 $<CATRig Name> + <Extra Bone Name>

Spine Naming

The Spine is made up of a hierarchy of bones that are all connected together with one spine controller. The spine controller stores a name for the entire spine, and each bone in the spine also stores its own local name. Each bones name is the result of adding together the CATRig name and the spine name and the bone name.

 $<CATRig Name> + <Spine Name> + <Bone Name>

Retrieved from "http://cat.wiki.avid.com/index.php/Using_CAT%27s_Naming_System" + "http://www.catoolkit.com/forum/forum_posts.asp?TID=1787&PN=1"


Copying and Pasting Rig Parts

Every body part on a CATRig can be copied and pasted from one body part to another on the same rig or on different rigs.

Image:CopyPasteRig_CopyPastePasteMirroredButtons.jpg

Copy Button

Image:CopyPasteRig_CopyButton.jpg

Press this button to copy the settings of selected bodypart ready for pasting.

Paste Button

Image:CopyPasteRig_PasteButton.jpg

Press this button to paste the settings of the copied bodypart on to this body part.

Paste Mirrored

Image:CopyPasteRig PasteMirroredButton.jpg

Press this button to paste the settings of the copied bodypart on to this body part but mirror the setting during the paste.

Retrieved from "http://cat.wiki.avid.com/index.php/Copying_and_Pasting_Rig_Parts"


Applying Manipulation Gizmos

Image:Gizmos.jpg

Manipulation Gizmos give you a much cleaner interface to work with your character. Often times, the CATBones are submerged under the skin mesh, and therefore selecting and editing these bones becomes a real headache.

Once gizmos are applied, all the user interface elements of the CATRig get displayed on the Gizmo. All the keyframes that get created on your CATRig will show up on the timeline when you select the gizmo. Even all your script calls will work on the Gizmo. When you right-click on a Gizmo, you get all the normal right-click menus that the CATBone should have.

Table of contents

1 Applying a Gizmo

2 Tips

2.1 Deleting Gizmos

2.2 Creating Custom Gizmo Hierarchies

2.3 Defying the laws of Circular Dependencies

2.4 Adding to the list of Gizmos

2.5 Removing unwanted Right-Click Menus

Applying a Gizmo

Image:RightClickApplyGizmo.jpg

If your CATRig is in SetupMode and you Right-Click on any CATBone and you will get the option to apply a Gizmo.

Image:RightClickApplyGizmoSelectGizmo.jpg

A list box will be displayed with a list of preset Gizmo shapes.

Image:RightClickApplyGizmoEditGizmo.jpg

You can edit the Gizmo Settings to fit the size an shape of your character skin mesh.

Image:RightClickApplyGizmoDone.jpg

Once you are done, simply press the 'Apply' button and your gizmo configuration will be complete.

Tips

Deleting Gizmos

You can delete a Gizmo, by selecting it and pressing delete. The CATBones that is was manipulating do not get deleted.

Creating Custom Gizmo Hierarchies

It is not necessary to link Gizmo objects to any part of the CATRig, although if you wish, this is not a problem. Often it is more interesting to link the gizmos together.

You can create hierarchies of Gizmos that reflect your desired navigation of the rig, rather than the actual hierarchies of the CATRig. You can link the ribcage gizmo directly to the Pelvis Gizmo and then quickly navigate your rig using the PageUp and PageDown buttons.

Defying the laws of Circular Dependencies

You are able to Link Gizmos together in ways that would normally cause a circular dependency in Max. You can, for example, link the Gizmo for the FootPlatform directly to the Gizmo for the Ankle without causing a circular dependency.

Adding to the list of Gizmos

The List of Gizmos that gets displayed in the Gizmos list box is simply read out of a Max file called Gizmos.max. You can open this file and you will see a selection of shape objects. You can add your own Gizmos to this file and resave it to add to the list of predefined gizmo shapes. Any kind of object can be used as a gizmo.

Removing unwanted Right-Click Menus

CAT uses the Right-Click menu in Max heavily to augment its workflow. If you assign a Gizmo to CAT that is an editable spline, has an Edit Spline or Edit Mesh modifier at the top of the stack, or any other object with any Right-Click menus, then you will see that whenever you right-click on your Gizmo, you will have many right-click menu options that you are unlikely to want to use. The simplest solution to this is to assign a push modifier to the top of the stack. Any modifier with no right-click menu options will work. Now when you right-click on the Gizmo, you only get the CAT menus.

Retrieved from "http://cat.wiki.avid.com/index.php/Applying_Manipulation_Gizmos"


Hierarchy Panel

Table of contents

1 Hierarchy Panel Rollout

1.1 Setup Mode Inheritance

1.2 Animation Mode Inheritance

1.3 Manipulation Locks

2 Joint Limits
3 How to use the Hierarchy Panel Settings

Every Bone in the CATRig has a selection of controls that defines how it can be manipulated and how it inherits motion. Select a CATBone, go to the 'Hierarchy Panel', and choose on the 'Link Info' option.

The settings and locks in the hierarchy panel allow you to configure a rig to be saver and more robust while animating. You can stop an animator from moving and editing bones in ways that are undesirable for the rig by simply changing a few settings. It is a good idea to look at the existing CATRigs that get distributed with CAT and look at the settings on different bones to see how they effect the manipulation of the bones.

Hierarchy Panel Rollout

Image:HierarchyPanelRollout.jpg

The Hierarchy Panel Rollout for every CATBone

Apply Transforms: This toggles whether this bone is effected by transform Gizmos. Bones that have no parent usually need to have this option turned on, and bones that are a child of other CATBones should have this option turned off. These bones are usually the root hub, and the IKTargets.

When the transform gizmo is used to move the animation of a layer, child bones in the hierarchy do not need to be transformed because they inherit the transformation from their parents. See Layer Transform Nodes

Display Onion Skins: You can turn on onion skins for any CATBone. This makes the CATBone display onion skins in the same way that the Max onion skins work. The only difference is that

Setup Mode Inheritance

Position: This toggles whether the bone inherits position from its parent or from the CATParent in setup mode.

Rotation: This toggles whether the bone inherits rotation from its parent or from the CATParent in setup mode.

Animation Mode Inheritance

Position: This toggles whether the bone inherits position from its parent or from the CATParent in animation mode.

Rotation: This toggles whether the bone inherits rotation from its parent or from the CATParent in animation mode.

Scale: This toggles whether the bone inherits scale from its parent or from the CATParent in animation mode.

Manipulation Locks

Manipulation Effects neighbours in Hierarchy: Determine whether this bone will effect neighbouring bones in the hierarchy.

Setup Mode

Position: This means that in Setup Mode the position of this bone is locked. When you try to move it, it will not move, but try to move its neighbours if 'Effect Hierarchy' has been turned on.

Rotation: This means that in Setup Mode the rotation of this bone is locked. When you try to rotate it, it will not rotate.

Scale: This means that in Setup Mode the size of this bone is locked. When you try to scale it, it will not re-size.

Manipulation Causes Stretching: Determine whether this bone will stretch when it or one of its children are pulled.

Static Matrix: By default, SetupMode is totally static, and the pose that the character returns to when in Setup Mode it defined by this matrix.

Animation Controller: You can set your bones to use an Animation Controller to define

Animation Mode

Lock Local Position: This means that in Animate Mode the position of this bone is locked. When you try to move it, it will not move, but try to move its neighbours if 'Effect Hierarchy' has been turned on.

If you are working on a bone that you do not wish to move during animation then you should turn this lock on. The means the if an animator accidentally tries to move the bone, then it will not allow the movement. This setting also effects the Capture Animation utility tool and they way it maps animation onto this bone.

Lock Local Rotation: This means that in Animate Mode the rotation of this bone is locked. When you try to rotate it, it will not rotate. This setting also effects the Capture Animation utility tool and they way it maps animation onto this bone.

Lock Local Scale: This means that in Animate Mode the scale of this bone is locked. When you try to scale it, it will not scale. It may be a good idea to lock the scale on bones that you do not wish to be scaled during animation. This means that if an animator accidentally scaled the bone, then the CATBone will ignore the scaling.

Manipulation Causes Stretching: Determine whether this bone will stretch when it or one of its children are pulled.

Layer Settings

Additive to Setup Mode: This toggle means that all the layers in the layer stack work relative to the Setup Pose. During evaluation this is what happens...

Bone Pose = 'Setup Mode Pose' + 'Layer Values'.

Remember Layer Settings: Pressing this button saves the current layer configuration to the bone. If you want a bone to use a particular combination of controllers, you can simply setup the desired configuration, and then press this button. The bone then saves that configuration, and then whenever a new layer is added, the bone reloads that configuration.

Note:

This only works on Absolute layers now.

Note2:

This does not work with Reaction controllers. Reaction controllers are not accessible via the SDK and so it is not possible to save and load them using CAT's animation saver and loader. If you wish so set up reaction controllers, please set them up using the 'Animation Controller' setting in the 'Setup Mode' group. You can set up a reaction controller on the Setup Controller, and then toggle on the setting 'Additive to Setup Mode' in the 'Layer Settings' group. The new RG3 file format will save and load the reaction controllers with the rig.

Note3:

You can setup limits using the new 'Limit Controller' that was introduced in Max8. You can limit your values manually, and then use the 'Remember Layer Settings;' to make the bone remember these limits values and reapply them each time you add a new Absolute layer.

Joint Limits

It is possible to set up joint limits using CAT that are independent of the layers. the benefit of using the CAT limit system is that you can limit any kind of controller. You can limit constraints for example. You could assign a look at constraint for your eye controllers on their setup controller, and then limit their motion so that they do not turn too far. You can limit TCB rotation controllers, or any kind of controller that you cannot limit using the Max Limit systems.

How to use the Hierarchy Panel Settings

Image:HierarchyPanel3Bones1.jpg

In this example we have a simple hierarchy of 3 Extra Bones

Image:HierarchyPanel3Bones2.jpg

If we select the green bone and move it along the X axis, it moves as you might expect.

Image:HierarchyPanel3Bones3.jpg

Now when you try to move the bone, nothing happens, because the position is locked.

Image:HierarchyPanel3Bones4.jpg

Now when you move the green bone, it's local position doesn't change, but it rotates its parent, and also rotates is self to look at its child.

Image:HierarchyPanel3Bones5.jpg

Now when you move the green bone the red bone stretches to reach the position of the green bone.

Image:HierarchyPanel3Bones6.jpg

Now when you move the green bone, both the red and green bones stretch to reach the position of the green bone.

Retrieved from "http://cat.wiki.avid.com/index.php/Hierarchy_Panel"


Editing your Rig Interactively in the Viewport

The quickest and easiest way to edit your rig is in the viewport. Simply edit the proportions of the rig by dragging the elements around.

In the case of spines the spine length is edited by simply moving the child hub. The spine stretches to fit.

With limbs it is much the same: move the child element to edit the length and rotation of the element above it in the hierarchy.

Element dimensions can be edited with the 3ds Max's scale function (you will usually want to use non-uniform scale for this). When in Setup Mode the rig elements are not scaled, but rather resized.

Using the methods described above it will be possible to set up the majority of your rig simply by placing the joints correctly into your model, which is much faster then the alternative of incrementally editing the length and orientation of each element in turn.

To adjust arm dimensions using Stretchy Bones:

  1. Image:SelectElbow.jpg

    Select the bone below the joint you wish to edit (in the case, the forearm).

  2. Image:MoveElbow.jpg

    Move the arm joint as required.

The arm bones resize to suit.

Retrieved from "http://cat.wiki.avid.com/index.php/Editing_your_Rig_Interactively_in_the_Viewport"


Editing Bone Pivot Positions

Sometimes you need to edit bone pivot positions. This is achieved by positioning your CAT bone relative to its pivot point.

The best way to do this is with the XForm modifier. Simply apply the XForm modifier and reposition the bone as required.

Once your changes have been finalized, you can collapse the Modifier Stack to bake the changes into the bone, as with any other CATRig Mesh edits.

See also

Customising the Geometry on CATBones

Retrieved from "http://cat.wiki.avid.com/index.php/Editing_Bone_Pivot_Positions"


CATParent

Every CATRig has one CATParent. The CATParent, which is the toolkit symbol seen under each rig as it is created, can be considered the character node of the rig.

All of the elements of the rig are associated with the CATParent. It holds basic information about the whole rig, including its name, size and other basic data.

It also holds the Rig Preset Manager, which allows you to load and save CATRig presets.

The rig is not linked to the CATParent but can be transformed by it when in Setup Mode. Scale transforms are inherited by the whole rig from the CATParent in any mode.

CATRig Parameters Rollout

Image:CATParent_CATRigParamsRollout.jpg

CATName: This edit box allows you to define the name that will be used to prefix all bones in the CATRig. See Using CAT's Naming System

CATUnits Scale: The CATUnits parameter defines a units system for this CATRig. All size parameters on the CATRig that define such things as bone length width and height are in CATUnits. See Understanding CATUnits

Track Display Group: These radio buttons define how the layers and keyframes on this CATRig will be displayed in the Track view. See Track Display Modes

Bone Length Axis: The axis that is being used by the CATRig as the length axis. See Understanding Bone Length Axis

About CAT: Press this to display information on the CAT product.

CATRig Load Save Rollout

Image:CATParent_CATRigLoadSaveRollout.jpg

The CATRig Load Save rollout

The CATRig Load Save rollout displays a list of existing CATRig presets.

Note:

Once a rig has been created the presets are grayed out as you cannot load a preset on top of an existing rig.

'To save a new CATRig preset:

  1. Image:Save CATRig Preset button.jpg Click 'Save Rig'.

  2. Navigate to the desired folder.

  3. Enter the Rig name.

  4. Click Save.

See Also

Creating a CATParent

Creating a CATRig

Using CAT's Naming System

Track Display Modes

Retrieved from "http://cat.wiki.avid.com/index.php/CATParent"


Understanding CATUnits

What is CATUnits

CATUnits is a number used throughout CAT to scale the character and its motion to allow sharing between characters.

Every bone length in a CATRig is multiplied by CATUnits when it is used. Also CATMotion uses CATUnits to scale the size of the motion to fit the rig.

For Example: If a bone length is 3.5, and CAT units is set to 2.0, then the actual bone length is going to be 7.0.

The height of the foot lift graph in the CATWindow for CATMotion is also scaled by CATUnits.

If you set CATUnits to 1.0, then all the bone lengths listed in the modifier panel are actual max units and CATUnits has no effect on them.

How to use CATUnits

You may be tempted to set CATUnits to 1.0 so that all you lengths are in actual Max units. This effectively disables CATUnits.

This is not recommended because CATUnits provide powerful functionality that you will find useful. CATUnits provides and approximate size setting for your character. A bigger character should have a larger CATUnits setting than a smaller character.

What this means is that if you need to share animation data between the big character and the small character, CAT can scale the motion to fit both characters. It does this using CATUnits.

When you load an animation clip, there is an option to scale the data. This scaling is calculated using the CATUnits values of the 2 characters.

Most default rigs, the CATParent fits comfortably underneath the feet of the character. You should try to build your rigs with CATParents approximately the same scale relative to the skeleton of your character. The easiest way to do this is to use and existing rig and modify it.

Retrieved from "http://cat.wiki.avid.com/index.php/Understanding_CATUnits"


Track Display Modes

By default, CAT only displays the controllers and keyframes for the currently selected layer. This is to simplify the workspace. As you are working on a layer, it is easier to understand the work you are doing if you can only see the keyframes for the selected layer.

Image:CATParent_CATRigParamsRollout.jpg

Settings for the Track Display mode can be found on the CATParent in the Modify Panel.

Active Layer

Image:TrackDisplayModes_TrackView_ActiveLayer.jpg

Only the currently selected layer is visible in the 'Assign Controller' rollout tree view, or in Track View. The other layers are not displayed and instead a dummy controller is displayed.

Contributing Layers

Image:TrackDisplayModes_TrackView_ContributingLayers.jpg

Only layers that are currently contributing to the pose and animation of the CATRig are displayed.

All Layers

Image:TrackDisplayModes TrackView AllLayers.jpg

All layers in the layer stack are displayed in full. All keyframes for all layers are displayed on the timeline, and you are able to do things like copy and paste controllers between layers in Track View.

Retrieved from "http://cat.wiki.avid.com/index.php/Track_Display_Modes"


Understanding Bone Length Axis

Setting the bone length axis

Image:LengthAxis X.jpg

CAT Defaults to using the "X" Axis as the length axis for all bones. This means that if you select a bone and set the transform mode to 'Move' and the coordinate system to 'Local' then you can easily see the axis that is set to the length axis is aligned along the length of the bone.

Image:LengthAxis Rollout.jpg

If you select the CATParent and go to the Modify panel you will see that there is a group called 'Bone Length Axis'. If you change this from 'X' to 'Z', you will see that your bones are now aligned to the Z Axis.

Image:LengthAxis_Z.jpg

Why to we have the X aligned mode?

Initially CAT was designed around using the Z axis as this seemed most logical at the the time. We got many requests from game developers to change from using Z to X. Most exporters were designed around exporting Max bones and biped, or Motion Builder, all of which use X. Often game physics engines would not work if the bone alignment was not X.

So we put in the X alignment mode to accommodate engines that were designed around specific character rigs.

Why does everyone use X for their bones?

Two famous robotics researchers decided one day that everyone needed to agree on a coordinate system for robotics. So they developed the Denavit-Hartenberg coordinate system that defined X as the length axis for any bone. The rest is history. Most animation systems have since been developed around using the Z axis, despite problems being caused by gimbal lock.

Retrieved from "http://cat.wiki.avid.com/index.php/Understanding_Bone_Length_Axis"


Creating a CATParent

Image:CreatingaCATParent Create Helpers Menu.jpg

Retrieved from "http://cat.wiki.avid.com/index.php/Creating_a_CATParent"


HubGroups

HubGroups are not elements in their own right but rather a subset of the rig. A HubGroup is composed of a hub, its limbs, and any tails.

You see HubGroups wherever you see the CATRig Hierarchy displayed, for example in the CATWindow.

HubGroups are always named with the name of the hub first followed by Group. E.g. RibcageGroup.

Image:Panther ribcage.jpg

The RibcageGroup on the Panther rig

See also

Hubs

Limbs

Tails

Retrieved from "http://cat.wiki.avid.com/index.php/HubGroups"


Hubs

Hubs are the CATBones that hold CATRigs together. A hub could be a pelvis, ribcage, thorax or head depending on how it is used. Spines, arms, legs, tails and extra bones can be created off it.

Image:CreateCATRigPelvis.jpg

The first hub created is the root object for the rig. In an upright, two-legged creature such as a human or a four-legged creature such as a horse this would be the pelvis.

Image:HubsCollection.jpg

Hubs on collection of different CATRigs

Creating Hubs

Editing Hubs

Adding Limbs

Adding Spines

Adding Tails

Manipulating Hubs

Retrieved from "http://cat.wiki.avid.com/index.php/Hubs"


Creating Hubs

Hubs are created in two ways. You can either...

Image:CreateCATRigPelvis.jpg

or:

Retrieved from "http://cat.wiki.avid.com/index.php/Creating_Hubs"


Editing Hubs

Table of contents

1 Modify Panel

1.1 Hub Name Edit Box

1.2 Copy, Paste, and Paste Mirrored Buttons

1.3 Use Custom Mesh

1.4 Length, Width, Height values

1.5 'Add Arm', 'Add Leg' buttons

1.6 'Add Spine' button

1.7 'Add Tail' button

2 See Also:

Modify Panel

Image:HubModifyRollout.jpg

Hub Name Edit Box

The name of this hub. See Using CAT's Naming System

Copy, Paste, and Paste Mirrored Buttons

Image:CopyPasteRig_CopyPastePasteMirroredButtons.jpg

Buttons for copying and pasting the hub settings to or from other hubs. See Copying and Pasting Rig Parts

Use Custom Mesh

Checkbox for enabling and disabling the custom mesh for this hub bone. See Customising the Geometry on CATBones

Length, Width, Height values

These parameters define the size of the hub in CATUnits.

'Add Arm', 'Add Leg' buttons

Buttons to add new limbs to this hub. See Adding Limbs

'Add Spine' button

Buttons to add new limbs to this hub. See Adding Spines

'Add Tail' button

Buttons to add new limbs to this hub. See Adding Tails

See Also:

Hub Hierarchy Controls

Retrieved from "http://cat.wiki.avid.com/index.php/Editing_Hubs"


Hub Hierarchy Controls

Image:Hub Hierarchy rollout.jpg

The Hub Hierarchy rollout

Table of contents

1 Pin Hub

2 Spine Limits Movement

3 Retargeting - Allow IK Rotations

4 See Also:

Pin Hub

Hubs can be pinned with a check box called Pin Hub. It allows you to temporarily lock a hub in position so that its parent can be transformed without affecting its child hub. A typical example of this would be pinning the ribcage of a character so that you can tilt the pelvis without repositioning the upper body.

Pinning is achieved by a switch found in the Hub Hierarchy rollout (found in the Hierarchy/Link Info panel) called Pin Hub.

To adjust the pelvis without affecting the ribcage:

  1. Select the ribcage.

  2. Image:Hierarchy Link Info panel.jpg Go to the Hierarchy/Link Info panel.

  3. On the Hub Hierarchy panel check Pin Hub.

Now when you manipulate the pelvis the ribcage isn't affected.

Note:

This option does not work on FK spines.

Image:Pin Hub 1.jpg

The Pelvis is selected

Image:Pin Hub 2.jpg

As the pelvis is moved the ribcage remains static

Pin Bone works by setting a keyframe on both the parent hub (pelvis) and the child hub (ribcage). The ribcage is effectively being counter rotated automatically to keep it in place.

Spine Limits Movement

Normally when you try to lift a ribcage up, or push it too far, the spine will restrict the movement of the hub to ensure it stays within range of the spine. If you are finding the when you move the hub, it pops, this may be because the spine is incorrectly limiting its movement. Try disabling this feature to see if the spine is causing the problem.

Retargeting - Allow IK Rotations

Allow IK Rotations is for retargeting only. When checked the hub will both rotate and move to find a best fit between the positions of the limb IK targets and the angles of the limbs. When unchecked the hub will move only.

See Also:

Hierarchy Panel

Retrieved from "http://cat.wiki.avid.com/index.php/Hub_Hierarchy_Controls"


Limbs

Limbs are used for arms, legs, wings etc. There are two differences between a leg and an arm. One is that legs are assigned FootPlatforms, which include CAT's foot pivot system. The other is that arms and legs are treated quite differently by CATMotion.

A limb can be made up of up to 20 bones, and each bone can have up to 20 segments. All limbs can have collarbones or palms as required.

The limb bones can be set up in any configuration. IK setup involves simply rotating the bones in Setup Mode.

The bone segments only rotate around the center of their bone. They exist to allow for twisting forearms etc. Their relative rotations are controlled with the Bone Twist Weight graph.

The Palm holds the controls for the arm. It has the controls for blending the arm between IK and FK. It also allows for the creation of an IK target for the arm, keying of all the rotations on a limb, and holds the master controls for the digits (fingers).

CAT supports seamless blending between IK and FK.

Each palm can have up to 100 digits and each digit up to 20 bones. Digits are set up with FK controls only. Digit controls include a weighable Digit Pose Manager and powerful Digit Modifiers for manipulating groups of digits.

Image:PantherFrontRLeg.jpg

The front leg of the Panther rig.

Arms and legs are both limbs. The difference between arms and legs is quite small. Both employ the same IK System. Both have identical user interfaces.

Image:LimbSetupRollout.jpg

See Editing Limbs

See Also

Adding Limbs

Editing Limbs

Editing Limb Bones

CAT's IK System

Retrieved from "http://cat.wiki.avid.com/index.php/Limbs"


Adding Limbs

Select the hub that you would like to add a new limb to.

Adding Legs

Either...

Image:HubModifyRollout.jpg

Go to the Modify Panel and Press on the "Add Leg" button.

, or:

Right-Click on the Hub in the viewport and on the Bottom Left quad menu select either "Add Leg".

Image:DefaultLeg.jpg

Adding Arms

Either...

Image:HubModifyRollout.jpg

Go to the Modify Panel and Press on the "Add Arm" button.

or:

Right-Click on the Hub in the viewport and on the Bottom Left quad menu select "Add Arm".

Image:DefaultArm.jpg

See Also

Hubs

Limbs

Retrieved from "http://cat.wiki.avid.com/index.php/Adding_Limbs"


Editing Limbs

Image:LimbSetupRollout.jpg

Limbs are made up of a number of possible sub-elements. These include a collarbone, limb bones, and palms. Master parameters for the limb are held in the Limb Setup rollout.

Name: Edit the name of the limb in the field box. See Using CAT's Naming System

Color swatch: Edit the arm color.

L: The L radio button tells the system the limb is assigned to the left side of the rig.

R: The R radio button tells the system the limb is assigned to the right side of the rig.

M: The M radio button tells the system the limb is assigned to the middle of the rig (You would need one of these on a tripod).

Image:CopyPasteRig_CopyPastePasteMirroredButtons.jpg

Buttons for copying and pasting the limb settings to or from other limbs. See Copying and Pasting Rig Parts

Num Bones: This spinner controls the number of bones in the arm. It ranges from 1 to 20.

Collarbone: When checked the limb is assigned a collarbone.

Palm or Ankle: When checked the limb is assigned a palm (which also serves as an ankle on a leg).

The Difference between Arm and Legs

There is no Create Limb button, but rather the option of creating an arm or leg. In actual fact there are almost no differences between an arm and a leg. Legs get a foot platform by default, and you can change an arm to use a foot platform rather than a cross yourself if you like.

An arm inherits motion from the hub differently than a leg. The arm inherits the rotation off the ribcage but rotates it over so it points sideways and a leg flips over completely so that is points downwards by default. You can see this by adding a new layer and then setting the limb to FK and all the rotation values to 0. You can see that the legs rotation is 180 degrees different from the hub it is attached to and the arm is 90 degrees different

Collarbones

Editing Limb Bones

Palms, Ankles, and Digits

Retrieved from "http://cat.wiki.avid.com/index.php/Editing_Limbs"


Collarbones

Collarbones are special bones that can be added to limbs. The Limb does not inherit rotations off the collarbone.

Editing Collarbones

Manipulating Collarbones

Retrieved from "http://cat.wiki.avid.com/index.php/Collarbones"


Editing Collarbones

Image:Collarbone - Bone Setup rollout.jpg

Name: Name of the selected bone.

Image:Copy button.jpg Copy bone settings.

Image:Paste button.jpg Paste bone settings.

Image:Paste Mirror button.jpg Paste Mirror bone settings.

Use Custom Mesh: This is used for when you have baked your bone mesh changes into your bone. When checked the bone will show as the edited mesh. When unchecked you will just see the underlying box (unedited bone).

X: The size of the bone in the X dimension, measured in CATUnits.

Y: The size of the bone in the Y dimension, measured in CATUnits.

Z: The size of the bone in the Z dimension, measured in CATUnits.

Add Bone: Creates an Extra Bone, linked to the selected bone.

See also

Editing Limbs

Editing Limb Bones

Retrieved from "http://cat.wiki.avid.com/index.php/Editing_Collarbones"


Editing Limb Bones

Image:LimbBoneSetupRollout.jpg

An arm is made up of between 1 and 20 arm bones.

Bone Setup

Individual bone parameters are accessed by selecting the bone in the viewport.

Name: The name of the bone.

Image:CopyPasteRig_CopyPastePasteMirroredButtons.jpg

Buttons for copying and pasting the limb settings to or from other limbs. See Copying and Pasting Rig Parts

Use Custom Mesh: This is used for when you have baked your bone mesh changes into your bone. When checked the bone will show as the edited mesh. When unchecked you will just see the underlying box (unedited bone).

Num Segs: This spinner controls the number of bone segments on the bone.

Tip:

Bone segments are great for “Twisting Forearms” etc.

Length: The length of the bone.

Width: The width of the bone.

Depth: The depth of the bone.

Add Bone: Creates an Extra Bone, linked to the selected bone. It will be created at the origin of the bone, which is at one end of a limb bone.

Bone Twist Weight

This graph controls the amount each segment twists relative to those around it.

Tangent: Controls the curve of the graph.

Value: Controls the start and end rotations.

Retrieved from "http://cat.wiki.avid.com/index.php/Editing_Limb_Bones"


Palms, Ankles, and Digits

Limbs can have palms. Palms are used for palms on arms and ankles on legs, etc.

When in IK Mode the palm can be aligned to the target or to the previous bone (e.g. forearm), as required.

Each palm can have up to 100 digits and each digit up to 20 bones. Digits do not have IK and can only be transformed in FK. Digit controls include a Digit Manager and powerful digit modifiers for manipulating groups of digits.

By default, both palms and digits are aligned to the X axis.

Image:Hand.jpg

See also

Editing Palms and Ankles

Editing Digits

Retrieved from "http://cat.wiki.avid.com/index.php/Palms%2C_Ankles%2C_and_Digits"


Editing Palms and Ankles

Image:Palm Setup rollout.jpg

As well as its own dimensions, the Palm Setup rollout has a list box to add and remove digits. The Ankle Setup rollout is identical.

Name: Name of the selected bone.

Image:CopyPasteRig_CopyPastePasteMirroredButtons.jpg

Buttons for copying and pasting the limb settings to or from other limbs. See Copying and Pasting Rig Parts

Use Custom Mesh: This is used for when you have baked your bone mesh changes into your bone. When checked the bone will show as the edited mesh. When unchecked you will just see the underlying box (unedited bone).

Length: The length of the palm.

Width: The width of the palm.

Height: The height of the palm.

Num Digits: Controls how many digits (fingers) the palm has. The number of digits ranges from 0 to 100.

Tip:

As digits are added and removed the fingers distribute themselves automatically along the end of the palm. By default, Digit 0 is the thumb.

Add Bone: Creates an Extra Bone, linked to the selected bone.

See also

Palms, Ankles, and Digits

Editing Digits

Retrieved from "http://cat.wiki.avid.com/index.php/Editing_Palms_and_Ankles"


Editing Digits

Digit Setup

The Digit Setup rollout can be accessed by selecting the digit in the Digit list box on the palm or by selecting the digit in the viewport.

Image:Digit Setup rollout.jpg

Name: Edit this field to change the name of the digit.

Image:CopyPasteRig_CopyPastePasteMirroredButtons.jpg

Buttons for copying and pasting the limb settings to or from other limbs. See Copying and Pasting Rig Parts

Num Bones: The number of bones the finger has. This ranges from 1 to 20.

Tip:

Each new bone created will default to the same dimensions as the bone at the end of the digit.

Width: The width of the digit.

Depth: The depth of the digit.

Length: The length of the selected digit bone.

Digit Bone Setup

This rollout has the settings for the selected digit bone.

Image:Digit Bone Setup rollout.jpg

Name: The name of the bone.

Use Custom Mesh: This is used for when you have baked your bone mesh changes into your bone. When checked the bone will show as the edited mesh. When unchecked you will just see the underlying box (unedited bone).

Length: The length of the bone.

Curl Weight: This value controls how much the DigitCurl values in CATMotion affect the digit. A value of 1.0 means that CATMotion has 100% effect. A value of 0.0 would turn CATMotion off for the selected digit. A value of -0.5 would mean that DigitCurl would have half effect in the opposite direction.

Add Bone: Creates an Extra Bone, linked to the selected digit.

See also

Palms, Ankles, and Digits

Editing Palms and Ankles

Retrieved from "http://cat.wiki.avid.com/index.php/Editing_Digits"


CAT's IK System

CAT has a completely overhauled inverse kinematics system that offers unparalleled power and flexibility. The overall idea was to create a rig that you can interact with intuitively, without having to think too much about IK and FK at all.

We call the system FK driven IK because that is exactly what it is. The system takes the current FK rotations of a limb and then fits them to the IK target. This approach offers incredible flexibility, including supporting IK chains that will rotate on any axis, not just one like other IK systems. It is also very easy to build in custom components, such as constraints, to add on custom functionality.

Table of contents

1 Configuring the IK Chain

2 What is the difference between working in IK and FK?

3 When to use IK

4 How to expect CAT's IK system to behave

4.1 Moving the IK target

4.2 Rotating the IK target

5 Tweaking the Limb Bone Rotations While Animating

6 Target Align

7 See also

Configuring the IK Chain

In CAT1, the bones in the IK chain were set up with a system called Bend Ratios. Since CAT2, the setup is much simpler and more flexible; simply rotate/drag the bones into the configuration you require! One big upshot of this is that there is no limit on what direction you rotate the bones (in CAT1 and most other IK systems you can only rotate the bones on one axis within the IK solution).

The fact that the IK solution is derived from the FK solution means that in Setup Mode it is important to keep the FK and IK configurations as close as possible. A good trick is to hit the Match FK to IK button before you start to edit the limb in IK. For complex limbs, such as spiders, it is recommended that you position the limb in FK, only turning on IK when you are finished.

Image:CAT IK System - spider.jpg

With complex limbs, rotate the bones in FK so that they sit on the FootPlatform.

Image:CAT IK System - bowlegged.jpg

Because you can rotate the limb bones on any axis it is possible to have bow legged IK chains for gun-slinging cowboys.

What is the difference between working in IK and FK?

Since CAT 2, the difference between IK and FK is actually quite small. The way the limb behaves when manipulated is much the same whether in IK or FK. The difference is that in IK the child end of the limb, e.g. the palm, will always try and follow the IK target. In FK the limb doesn't have this restriction.

Image:CAT IK System - IKvsFK 1 .jpg Image:CAT IK System - IKvsFK 2 .jpg

When the ribcage is moved from side to side with the arms in FK the arms simply move with the ribcage.

Image:CAT IK System - IKvsFK 3 .jpg Image:CAT IK System - IKvsFK 4 .jpg

With the arms in IK the hands stay put while the ribcage is transformed.

When to use IK

You will want to use IK when you need the limb to have a fixed end position. The most common example of this is animating legs walking, as you need to be able to place the feet on the ground without them sliding around as you rotate the leg bones. Other examples would be arms holding onto other objects, such as guns or steering wheels.

How to expect CAT's IK system to behave

Moving the IK target

As you would expect from any IK system, when you move the IK target, the IK chain retains its original configuration as much as possible.

Image:CAT IK System - MovingTarget 1 .jpg Image:CAT IK System - MovingTarget 2 .jpg

As the leg IK target moves out the limb maintains the basic leg setup as much as possible.

Rotating the IK target

You may be surprised to find that rotating the IK target does not rotate the limb. While in the first instance this may seem strange, it actually makes CAT's IK system much more flexible and isn't a problem.

Image:CAT IK System - RotatingTarget .jpg

When you rotate the IK target it only rotates the ankle. The rest of the limb remains unaffected.

One simple way to deal with this is simply to rotate the upper leg bone separately (see Tweaking the Limb Bone Rotations While Animating, below). Another alternative is to constrain the upper leg rotations to the FootPlatform.

Tweaking the Limb Bone Rotations While Animating

As you animate the IK target around you might want to tweak the exact orientation of the bones in the IK chain. With CAT you just rotate the bones in the viewport as required.

Image:CAT IK System - TweakingLimbRots 1 .jpg Image:CAT IK System - TweakingLimbRots 2 .jpg

The hand has been moved over but the elbow is too low, so we just pull the elbow up.

Target Align

The Target Align value lets you control whether the palm inherits the rotations of the IK target or not.

When the Target Align value is set to 0.0 the palm will move with the IK target but will stay aligned to the last bone on the limb (forearm on a human).

See also

Limb Animation Controls

Palm Animation Controls

Retargeting

Manipulating the Rig

Retrieved from "http://cat.wiki.avid.com/index.php/CAT%27s_IK_System"


Manipulating the Rig

CAT has a system called F/IK that allows you to just push your character into the pose you want without having to worry about the too much about IK and FK. You will find it very easy to get the pose you want. Most of the control you'd normally associate with IK is also present in FK as well and vice versa.

When working with the rig you will find you can achieve a great deal with the move tool. Rotations are, of course, possible but often won't be necessary.

The F/IK system is actually a combination of three main features: effect hierarchy, FK-driven IK, and retargeting. These are complemented by CAT's procedural spine, digit controls, and foot pivot system.

One of the features of the CATRig is that if you move a bone in the hierarchy (regardless of whether you are in IK or FK), the bones on either side will rotate to accommodate the move. This is system allows you to just push the rig around quickly and intuitively. This system is called Effect Hierarchy. Below are three examples of this:

Table of contents

1 Bending the Elbow

2 Manipulating the Ribcage

3 Tweaking the Fingers

4 Manipulating Spines

4.1 Procedural and FK Spines

4.2 Limitations of FK Spines

5 Adjusting the Pelvis

6 Manipulating Fingers (Digits)

7 Rotating the Feet

8 Manipulating Hubs

9 Manipulating Tails

10 Manipulating Collarbones

11 See also:

Bending the Elbow

Image:RigManip - elbow 1 .jpg

Arm position before edit

Image:RigManip - elbow 2 .jpg

Simply moving the elbow back bends the arm

Manipulating the Ribcage

If you move the upper arm, the ribcage (hub) rotates to accommodate this.

Image:RigManip - ribcage 1 .jpg

Select the upper arm

Image:RigManip - ribcage 2 .jpg

As the upper arm is moved the ribcage rotates to fit

Tweaking the Fingers

Image:RigManip - fingers 1 .jpg

Outstretched fingers

Image:RigManip - fingers 2 .jpg

Moving the middle digit bends up the finger

Manipulating Spines

CATRigs now have two types of spines: procedural and FK; both can be worked with in much the same way. The main difference is that FK spines have PRS controllers on every spine bone, which means you can transform them individually. Be aware that FK spines have limitations too!

Spines interpolate between the hubs on their extremities, so all you have to do is transform the hubs as you want.

Image:SelectRibcage.jpg

Original pose. Select the ribcage.

Image:MoveRibcage.jpg

As you drag the ribcage over the spine just interpolates with it

Procedural and FK Spines

CATRigs have two types of spines: procedural and FK; both can be worked with in much the same way. The main difference is that FK spines have PRS controllers on every spine bone, which means you can transform each spine bone individually. Be aware that FK spines have limitations too!

Limitations of FK Spines

While FK spines do give you the option of animating every spine bone, they do have limitations:

It is also important to note that animation data from a rig created with a procedural spine will not load correctly onto a rig with a FK spine and vice versa.

Finally it is worth noting that FK spines require you to manage a lot more keyframes. Unless you feel you really need the extra control we would strongly recommend that you use procedural spines.

Adjusting the Pelvis

Sometimes you want to adjust the pelvis (parent hub) without affecting the ribcage (child hub). For this purpose CAT has a feature called Pin Bone.

With Pin Bone you can manipulate the pelvis without affecting the ribcage.

Image:RigManip - pelvis 1 .jpg

Pelvis selected

Image:RigManip - pelvis 2 .jpg

As the pelvis is transformed the ribcage remains stationary

Manipulating Fingers (Digits)

In addition to transforming the fingers (digits) directly, CAT provides you with the best finger control system going. The controls give you the ability to edit the spread, bend, roll and curl of the selected fingers. It also has a built in digit pose preset manager.

Image:RigManip - digits 1 .jpg

Select the palm

Image:RigManip - digits 2 .jpg

In the Digit Manager, highlight the digits you wish to edit

Image:RigManip - digits 3 .jpg

Drag the Curl spinner and the fingers curl in.

Rotating the Feet

An important new feature in CAT2 is its Foot Pivot system. The Foot Pivot is now just a sub-object of the FootPlatform (IK target for the foot). You simply position it as required and then rotate the foot. It is completely animateable.

Image:RigManip - feet 1 .jpg

Select the Footplatform. When you select it you can already see the Foot Pivot.

Image:RigManip - feet 2 .jpg

Move the pivot to the front of the FootPlatform.

Image:RigManip - feet 3 .jpg

When you rotate the FootPlatform it now rotates from the toe.

As you continue to animate the Foot pivot is simply animated into position as required.

Manipulating Hubs

When you are working with hubs that are connected to spines, there are some tools to make you day faster.

If you are in Animate mode and you right click on a hub, you can see an option to pin the hub. What this enables you to do, for example, is edit the base hub (pelvis), without effecting the position and rotation of the tip hub (ribcage). See Pin Hub.

Manipulating Tails

Tails are easy to work with. Just select a bunch of bone in the tail and rotate. All the bones rotate together to cause the tail to curl nicely.

Image:SelectTailBones.jpg

Multiple tail links selected

Image:RotateTailBones.jpg

When rotated up the tail curls smoothly

Manipulating Collarbones

Collarbones are typically only rotated. Also, you will usually not want to twist collarbones.

Image:Manipulating Collarbones.jpg

One of the easiest ways to edit the collarbones rotation is to select the 'UpperArm' or 'shoulder' bone and move it. When you move the UpperArm bones, the collarbone will be rotated according to your movements.

Or:

You can select the collarbone directly and use the Move, Rotate, and Scale tools.

See also:

Foot Pivot System

Animating in Stretchy Bones Mode

Hierarchy Panel

Retargeting

Retrieved from "http://cat.wiki.avid.com/index.php/Manipulating_the_Rig"


Foot Pivot System

CAT has a foot pivot system that provides unparalleled control and is as simple to use as you could want. Simply move the pivot where you want it and rotate the FootPlatform. The foot pivot is animatable, so you just move it around with the Auto Key button on, in the same way you would any other thing else in Max.

To work with the foot pivot system:

  1. Select the FootPlatform. When you select it you can already see the Foot Pivot. It is the cross in the middle of the FootPlatform.

    Image:Foot Pivot System 1.jpg

  2. Image:Animationpanel.jpg In the Animation panel go to the Selection Level menu and turn on Sub-Object.

    Image:Foot Pivot System 2 .jpg

  3. Move the pivot to the front of the FootPlatform.

    Image:Foot Pivot System 3.jpg

  4. Turn off Sub-Object in Selection Level.

    When you rotate the FootPlatform it now rotates from the toe.

    Image:Foot Pivot System 4.jpg

  5. As you continue to animate, simply animate the Foot pivot position as required.

See also:

Editing Limb IK Targets

Retrieved from "http://cat.wiki.avid.com/index.php/Foot_Pivot_System"


Editing Limb IK Targets

IK targets are available on all limbs. On legs we call the IK targets FootPlatforms, which have foot pivot controls.

Image:IK Target rollout.jpg

IK Target Parameters

Length: On platforms this variable controls the length of the platform. It has no effect of cross IK targets.

Width: The width of the FootPlatform, or size of the cross.

Platform: Displays the target as a platform.

Cross: Displays the IK target as a point helper.

See also

Editing Limbs

Retrieved from "http://cat.wiki.avid.com/index.php/Editing_Limb_IK_Targets"


Using Retargeting and CATMotion

CATMotion also integrates CAT's retargeting system. It has two big advantages over normal IK. Firstly, it removes the problem of snapping at the knee joint, caused by over extension of the IK chain. Secondly, because the leg pushes the pelvis up, the character automatically has weight.

Because it enables completely straight legs, we have found that with retargeting it is possible to achieve walks that would be either very difficult of even impossible using IK, with ease.

in CATMotion, retargeting is controlled by a combination of two controllers, KneeAngle and LegWeight.

The walkcycle is divided up into four knee angles. Control over the knee angles is accessed in the KneeAngle controller, under Legs in the CATWindow.

For clarity we have called the four knee angles: Lift, MidLift, Plant and MidPlant.

Lift: is the angle of the knee as the foot is about to leave the ground.

MidLift: is the angle of the knee in the middle of its path through the air.

Plant: is the angle of the leg as the foot is placed back on the ground.

MidPlant: is the angle of the knee in between Plant and Lift.

The other controller important to Retargeting is called LegWeight. It can be found with KneeAngle under Legs in the CATWindow.

The LegWeight graph controls the how much the foot platform is being pulled down onto the ground plane. When LegWeight has a value of 0 increasing the knee angle will pull the foot higher into the air. When LegWeight has a value of 1.0 increasing the knee angle will pull the pelvis down.

LegWeight can also be thought of as Leg Priority. The left side of the graph is the Lift Priority and the right side is the Plant Priority. This becomes important when you try to push the angles further than is possible to physically achieve. Then by adjusting the leg weights so that one is set to and the other to zero you can control where the error will be most. Usually the planting leg should get priority.

Error within the system is absorbed in the ankles. If you notice the ankles are tending to go straight up or otherwise behave strangely try adjusting either LegWeight or KneeAngle.

Usually the first thing to try will be to reduce the Maximum Stride Length or increase/decrease various knee angles.

If the movement looks a bit clunky it could be the LegWeight graph needs smoothing out. If the ankles are going too straight as the foot lifts it could be the LegWeight on the lift part of the graph is too long.

Running and Retargeting

While Retargeting is a great solution for walking, it isn’t a great solution for running. At this point it is pretty much impossible to get a useful blend between where the leg weights let go and ‘flight’ takes over.

For now we recommend that you use IK for running and jumping.

See also:

Retargeting

Retrieved from "http://cat.wiki.avid.com/index.php/Using_Retargetting_and_CATMotion"


Retargeting

CAT has a system called retargeting, which is available on all limbs. The idea behind retargeting is that it tries to maintain the IK solution and the angles of the limb bones; pushing out or pulling in, and rotating the hub to achieve this. This is in contrast to a normal IK solution that leaves the root object (hub) in place and moves the IK target only without taking into account the angle of the limb bones.

Retargeting was originally created to retarget imported motion data, and as a way to create straight-legged walkcycles in CATMotion. It is not limited to this however, and it is proving itself as a powerful keyframe animation tool as well.

Retargeting is blended on and off with the Retargeting slider found with the IK sliders on the Limb Animation rollout.

Retargeting in action:

In the examples below both arms have Retargeting set to 100%.

Image:Retargeting 1 .jpg

Starting position

Image:Retargeting 2 .jpg

The IK target pulled forward

As the right IK target is moved forward the system pulls the ribcage around, maintaining the angle of the arms until it is no longer possible. This is a much more natural movement than stretching out the arm and then rotating the ribcage.

Image:Retargeting 3 .jpg

Pulling the IK target out to the side, further than the arm can reach.

Note how as the IK target is moved out to the side the ribcage moves over, trying to keep between the two hands, while of course still being limited by the length of the spine.

The behavior of the hub can be limited by a switch on the Hub Hierarchy rollout in the Hierarchy/Link Info panel called Allow IK Rotations. When this is checked the hub will rotate and move to fit the retargeting solution. When unchecked the hub will move only, and maintain its orientation.

Image:Retargeting 4 .jpg

The IK target pulled forward

With Allow IK Rotations unchecked the hub (ribcage) stays straight while still moving as far as it can.

See also:

Retargeting Mocap Data

Retrieved from "http://cat.wiki.avid.com/index.php/Retargeting"


Retargeting Mocap Data

CAT uses retargeting to calculate pelvis positioning and defaults to FK rotations for the rest of the body.

Limbs can be in either IK mode, which preserves the original end positions, or FK mode, which maintains the bone angles.

Because of the way the motion is retargeted, it is important that the data is scaled to as close to the size of your rig as possible.

Further tweaking can be achieved with an adjustment layer.

Tip:

CAT uses retargeting to retarget the legs. This means that you will usually want retargeting for a leg to be set to 1.0. As an alternative you can leave retargeting off and reposition the pelvis/FootPlatforms with a World Adjustment Layer.

Tip:

If your data describes a character falling over, or otherwise leaving the ground you would generally blend your legs to FK.

See also

Working With Motion Capture Data

Retargeting

Retrieved from "http://cat.wiki.avid.com/index.php/Retargeting_Mocap_Data"


Capture Animation

The Capture Animation tool allows you to transfer animation from any hierarchy or collection of objects in Max onto your CATRig.

Capture Animation was designed primarily to facilitate the importing of Motion capture data, but of course it can work with any animated hierarchy. Once the motion data has been loaded into 3ds Max by using one of the importers, the next stage is to map the data onto your character. This is handled by CAT's Capture Animation utility.

It is important to note that the Capture Animation utility can be used separately, externally to the motion capture process. It allows you to capture animation data from any animation hierarchy onto a CATRig.

The Capture Animation dialogue is opened up automatically after the motion has been imported into the scene. Its purpose is to map the data onto the rig, as well as providing you various options regarding the animation captured.

The other thing you will notice as the Capture Animation panel opens is that an AutoMap function is called automatically. AutoMap takes a 'best guess' at which bone in the motion capture data relates to which bone on your CATRig. We've found that the majority of the time this works very well and no more editing is required.

Table of contents

1 Capture Animation Video

2 Capture Animation Window

3 Auto Mapping

4 Manual Mapping

4.1 Drag n Drop

4.2 Right Click Menus

5 Editing the Alignment of the bones

6 Mapping Bones and Hierarchy Panel Locks

7 Troubleshooting

Capture Animation Video

Image:CaptureAnimationVideoThumbnail.jpg

Click to download the video

This video covers working with the Capture Animation utility. Setting up Capture animation Mapping presets saving and then transferring animation between rigs.

Capture Animation Window

Image:CapAnimWindow.jpg

Target Rig: The Target Rig button is used to select the CATRig you wish to map on to. When the Capture Animation utility is called as part of the motion capture import process the Target Rig is the rig you are capturing onto, so it is selected automatically.

Source Objects: The Source Objects button is used to select the hierarchy you wish to capture off. During motion capture this is the hierarchy created from the motion capture data and the objects are selected automatically. The button is renamed to the root node of the hierarchy.

Delete Source on Close: When this check box is checked the source hierarchy will be deleted when you exit the Capture Animation panel.

AutoMap: Generate an approximate mapping of your data onto the CATrig

Clear Mapping: Removes all of the current Mapping

Mapping can be saved as a CAM file so that you don't have to reconfigure mapping every time you capture.

Load Mapping: Click to load in a previously created mapping arrangement, saved in a CAM file.

Save Mapping: Use to save your current mapping for reuse, as a CAM file.

Start time: The first frame of the capture.

End time: The last frame of the capture.

Frequency: This value determines how many keys are created. E.g. 1 = 1 key per frame; 2 = 1 key every 2nd frame.

Capture Animation: Capture Animation creates keyframes as dictated by the time range spinners. You press this button when you are ready to bake the live mapping onto keyframes on your CATRig.

Auto Mapping

The AutoMap feature on the Capture Animation window is a quick way to generate a mapping between the source hierarchy and your CATRig.

The AutoMap feature tries to find bones in the source hierarchy that correlate to bones in your Skeleton.

Note:

The AutoMap feature may fail if the source hierarchy contains unusual bone names, or the hierarchy of your source skeleton has strange alignment issues.

Note:

The Automap feature uses a lot og guesswork to try and generate alignment between the source bones and the CATRig bones. It is expected that you will need to refine the results of the AutoMap feature to get a perfect mapping.

Manual Mapping

You may need to Manually assign a mapping from a source bone to a CATBone. There are 2 ways you can do this.

Drag n Drop

Image:Mapping Drag n Drop.jpg

If the bone you wish to use as an animation source is in the Source Hierarchy List box, then you can select it and drag the mouse over to the target CATRig bone and then release the mouse.

Right Click Menus

Image:Mapping RCM.jpg

With the Capture animation window open, if you right click on a CATBone you will see a new menu item in the bottom left quad called 'Map Bone'

Map Bone: When you select this right click menu item, Max is put into picking mode. You then need to select the bone that you wish to drive the motion of the selected CATBone.

Image:CapAnimWindowLoaded.jpg

Once you have your character successfully mapped, the Mapping Rollout in the Capture Animation window will display the current mapping.

Editing the Alignment of the bones

Image:MappingLayer.jpg

In many cases you will need to edit the alignment of the CATRig bones to correctly fit the source skeleton. This may be because the CATBones use a different up axis as the source skeleton you are capturing animation from, or because some software introduces offsets to bone rotations.

Once you have begun the Mapping Process, you will notice that a new layer has been added to the bottom of your CATRigs layer list. This layer uses special controllers that hold 3dsmax animation constraints. It also stores the offset, and also has the ability to do scaling of the transferred motion to fit smaller characters.

You can simply select bones and rotate and move them to edit the alignment. Each bone does not inherit the offsets of it parent. This simplifies the process of editing your skeletons alignment as you can edit each bone independently.

This edit is stored in the controller that has been assigned to that bone. When you save a Capture Animation preset file (*.CAM), all the offsets and mapping are stored also.

Mapping Bones and Hierarchy Panel Locks

The Capture animation tool uses settings in the Hierarchy Panel to determine how bones should be mapped. If the animation position lock is turned on for a CATBone, then the Capture Animation tool will not constrain the position of the bone to the position of the source bone.

If the animation rotation lock is turned on for a CATBone, then the Capture Animation tool will not constrain the rotation of the bone to the rotation of the source bone.

Troubleshooting

Image:CaptureAnimationTroubleshootingVideoThumbnail.jpg

Click to download the video

Click to download the 3dsmax scene file

Sometimes you may not get the desired results when you begin the process of transferring animation data using Capture Animation. This may be because your source data is not a humanoid skeleton, it does not follow standard naming conventions, or there may be offsets in your source skeleton that cause the Automap function not to work.

This video covers manually mapping a character in a situation where the AutoMap feature yields undesirable results.

Retrieved from "http://cat.wiki.avid.com/index.php/Capture_Animation"


Working With Motion Capture Data

Image:MocapImport.jpg

Motion capture data is loaded into the Layer Manager in much the same way as any other keyframe data. Once the motion capture data is loaded into CAT, all the same powerful keyframe editing tools are available to transform, edit, duplicate, retime the motion data. You are then able to use all the layering tools to edit the motion capture data in a non-destructive way.

CAT currently supports the loading of BVH, HTR, FBX motion capture file formats, as well as importing the motion from Character Studio BIP files.

The process has two stages, importing the motion data into a separate hierarchy in Max, and then mapping the animation data from the hierarchy onto your CATRig using Capture Animation.

Each format has its own importer. Once the data is imported the mapping is all handled by the Capture Animation utility, which automatically maps the data onto your character and allows you to edit the mapping if required.

Once data is imported you can use the Layer Transform Gizmo to easily transform the whole clip/layer and Adjustment layers to enable you to tweak to the animation.

Importing HTR Files

Importing BVH Files

Importing FBX Files

Importing BIP Files

Capture Animation

Retargeting Mocap Data

See Also

Mapping Motion from Mocap Point Clouds

Motion Capture Resources

http://mocap.cs.cmu.edu (http://mocap.cs.cmu.edu/)

http://www.bvhfiles.com/

http://cade.scope.edu/

Credo Interactive Mega Mocap V2 (http://www.charactermotion.com/products/motion_capture/index.html)

Retrieved from "http://cat.wiki.avid.com/index.php/Working_With_Motion_Capture_Data"


Importing HTR Files

The HTR import in CAT imports HTR files into the Max scene as a hierarchy of box primitives with keyframes and animation. The Capture Animation tool is the tool that you can use to map this motion onto your CATRig.

Image:ImportHTR RCM.jpg

The ImportHTR tool can be accessed in 2 different ways. You can open the Import HTR dialog by right clicking on any bone in a CATRig and navigating to the FileIO menu and then to Import HTR, or you can select the CATParent and go to the Motion Panel where you will see the Cip and Pose Manager.

ImportHTR Dialog

Image:ImportHTR Dialog.jpg

Load Animation: Turn this option off to simply import the base pose of the HTR file.

Capture Animation: Turn this option off to skip capturing the animation onto your CATRig

CAM File Button: You can use this to pick a CAM file if you have already created one.

Start Time: The Start time for the HTR animation keyframe to begin.

Scale Factor: The scaling that will be applied to the HTR hierarchy when it is created.

Relative Bones Size: The size of the bones that will be created.

See Also

Capture Animation

Retrieved from "http://cat.wiki.avid.com/index.php/Importing_HTR_Files"


Importing BVH Files

The BVH import in CAT imports BVH files into the Max scene as a hierarchy of box primitives with keyframes and animation. The Capture Animation tool is the tool that you can use to map this motion onto your CATRig.

Image:ImportBVH RCM.jpg

The ImportBVH tool can be accessed in 2 different ways. You can open the Import BVH dialog by right clicking on any bone in a CATRig and navigating to the FileIO menu and then to Import BVH, or you can select the CATParent and go to the Motion Panel where you will see the Cip and Pose Manager.

ImportBVH Dialog

Image:ImportBVH Dialog.jpg

Load Animation: Turn this option off to simply import the base pose of the HTR file.

Capture Animation: Turn this option off to skip capturing the animation onto your CATRig

CAM File Button: You can use this to pick a CAM file if you have already created one.

Start Time: The Start time for the HTR animation keyframe to begin.

Scale Factor: The scaling that will be applied to the HTR hierarchy when it is created.

Relative Bones Size: The size of the bones that will be created.

See Also

Capture Animation

Retrieved from "http://cat.wiki.avid.com/index.php/Importing_BVH_Files"


Importing FBX Files

For loading in FBX files CAT uses 3ds Max's own FBX importer.

  1. When you select a FBX file to import the first thing you see is this dialogue box:

    mport FBX dialog box

    The purpose of this dialogue is to remind you to select Merge in the FBX window. If you do not select Merge, you will not get desirable results.

  2. Next the FBX Importer dialogue box appears:

    FBX Importer options

    ALWAYS select Merge as your Import Type.

    This screen capture shows typical import settings. You do not require geometry or cameras, .etc, as they have no relevance to the motion of the CATRig. Loading them in won't matter but they will add in lots of unnecessary data for you to filter through and slow down the import process.

  3. Adjust 'Rescale scene's root node to unit size' and 'Y-up to Z-up root node rotation' as required.

  4. Press OK to continue with the import.

See Also

Capture Animation

Importing HTR Files

Importing BVH Files

Importing BIP Files

Retrieved from "http://cat.wiki.avid.com/index.php/Importing_FBX_Files"


Importing BIP Files

CAT can import motion from BIP files onto CATRigs. Please note that this is not the same as importing the original BIP file. You are not loading in the original keyframes.

There are no settings for BIP file import. Once a BIP file is selected you will be put straight through to the Capture Animation window.

See Also

Capture Animation

Importing HTR Files

Importing BVH Files

Importing FBX Files

Retrieved from "http://cat.wiki.avid.com/index.php/Importing_BIP_Files"


Mapping Motion from Mocap Point Clouds

If you are working with motion capture data and would like to bring point cloud data right into max and then map the motion onto a CATRig, there are ways to do this. This is not really a tutorial, rather it is an example of how this problem can be solved. No scripting was used to configure this system. Please download the file and look at the solution. It may give you ideas on how you can solve your own motion mapping problems.

This is an exercise in configuring constraints to solve a complex integrated problem. Constraints are directional. By this I mean that if A is constrained to B, then B cannot reference A for any reason. This reality that constraints cannot cause circular relationships means that we are forced to take a layered approach to the problem.

The result we need is a set of bones with correctly animated joint positions and rotations. The simplest way I have found to solve this problem is to break the problem into two simpler problems, positions and rotations and solve them separately. The position of a bone is not dependant on any other bones in the skeleton, and also not dependant on the rotation of any other bone.

The best way to explore this file is to hide/unhide the layers that you are interested in. Start with the marker cloud, then unhide the 'Joint Markers' layer. Select each point helper and look at the markers it is constrained to. Start with the simple ones like the hip, knee, ankle joint positions.

CAT greatly simplifies the solution to this problem.

Table of contents

1 Download the Max Scene File

1 Point Cloud

2 Joint Positions

3 Box Rig

4 CATRig

Download the Max Scene File

Max Scene File

This Max Scene file contains the point cloud and the CATRig.

Point Cloud

Image:MocapDataClouds1.jpg

The original mocap data cloud.

Joint Positions

Image:MocapDataClouds2.jpg

The first layer is simply to generate joint positions in the cloud using point constraints. The joint positions are simply weighted position constraints, and therefore relatively easy to set up. The Red crosses in the scene file represent basic joint position helpers.

For the Pelvis there is a group of 3 point helpers that hare used to define the orientation of the Pelvis using 4 surrounding markers. An identical setup is used to drive the orientation of the Ribcage and Head. These are the blue points in the image.

Box Rig

Image:MocapDataClouds3.jpg

The second layer is the box rig which defines the joint angles. Boxes are constrained to the joint positions and LookAt controllers define rotations. Note that the exact position of many of the bones is not important. The knee joints for example are moving relative to the hip bone, but when this data is mapped onto the CATRig, the CATRigs IK system effectively cleans up the motion and locks the joint locations.

If you look at the max scene file, you will notice that the upper arm configuration is quite complex. You will notice that there is a marker placed on the shoulder area that we could use as the UpVector for the arms LookAt constraint, but this setting yields strange behaviour at some poses.

CATRig

Image:MocapDataClouds4.jpg

The CATRig has been mapped onto the BoxRig using the Capture Animation Tool.

Note:

Retargeting has been turned on for the legs to help adjust the pelvis's position.

Retrieved from "http://cat.wiki.avid.com/index.php/Mapping_Motion_from_Mocap_Point_Clouds"


Limb Animation Controls

Limb controls are held on the Limb Animation rollout.

To go to the Limb Animation rollout:

Image:Limb Animation rollout.jpg

The Limb Animation rollout

Table of contents

1 Limb Animation rollout

2 Blending from IK to FK

3 Blending from FK to IK

4 Moving the IK Target Up the Limb

5 See Also:

Limb Animation rollout

The Limb Animation rollout allows you to load and save limb poses. It also gives you access to the IK settings for the limb.

Image:Create IK Target button.jpg An arm has no IK target by default. To animate in IK you will first have to use the Create IK Target button. This will create a special point helper which serves as the IK target for the arm. Legs use their respective FootPlatforms as their IK targets.

Note:

The Create Target button will only work within an active absolute layer.

Image:Select IK Target button.jpg Use Select IK Target to select the IK target for the selected palm or ankle without having to go searching for it in the scene.

Image:Move IK Target to Palm button.jpg Move IK Target to Palm is for when you have been animating in FK mode, leaving the IK Target behind and you wish to blend back to IK.

Image:Match IK and FK button.jpg Click this button with Max's Auto Key button activated before you blend to or from IK. This is used to create seamless blends between the two animation modes.

IK/FK: The IK/FK slider enables you to blend between IK and FK on the limb, with 0.0 being IK and 1.0 being FK.

Num IK Bones: Num IK Bones allows you to slide the IK target up and down the limb. The Num IK Bones variable ranges from 0.0 to the number of bones on the limb, including the palm. For example, a typical leg setup of 2 leg bones and an ankle will range between 0.0 and 3.0.

Retargeting: This slider blends CAT's retargeting for the selected limb. 0.0 is off and 1.0 is on.

Blending from IK to FK

The IK/FK slider sets the IK weight. An IK/FK weight of 1.0 mean the limb is in FK; an IK/FK weight of 0.0 means the limb is in IK.

Note:

You wouldn’t normally want the weight to sit between 0 and 1. The slider is used to enable you to blend between IK and FK.

To seamlessly blend a limb from IK to FK:

  1. Make sure you are on an active Absolute layer.

  2. Go to the frame where you wish to start the blend.

  3. Image:Auto Key button.jpg Turn on 3ds Max’s Auto Key button.

  4. Image:Match IK and FK button.jpg Hit the Match IK and FK button.

  5. Wiggle the IK/FK slider to create a keyframe.

  6. Go to the time you wish to end the blend on.

  7. Move the IK/FK slider to 1.0.

As FK is blended on the limb will remain in the same place, but will now be ready to animate in FK.

Blending from FK to IK

  1. Make sure you are on an active Absolute layer.

  2. Go to the frame where you wish to start the blend.

  3. Image:Move IK Target to Palm button.jpg Hit the Move IK Target to Palm button.

  4. Image:Auto Key button.jpg Turn on 3ds Max’s Auto Key button.

  5. Wiggle the IK/FK slider to create a keyframe.

  6. Go to the time you wish to end the blend on.

  7. Move the IK/FK slider to 0.0.

As FK is blended down the limb will remain in the same place, but will now be ready to animate in IK.

Moving the IK Target Up the Limb

Traditionally the IK target sits at the end of the limb, but sometimes you don't want this. What about crawling characters? Then you need the IK target positioned at the knee. You can animate the IK target up and down the limb as you wish, with an option called Num IK Bones.

Num IK Bones allows you to slide the IK target up and down the limb. The Num IK Bones variable ranges from 0.0 to the number of bones on the limb, including the palm. For example, a typical leg setup of 2 leg bones and an ankle will range between 0.0 and 3.0.

Lowering the Num IK Bones variable moves the IK target (e.g. FootPlatform) up the limb, bone by bone. On a typical leg a value of 1.0 will place the IK target at the knee. A value of 0.0 will place it right up the top of the leg, at the pelvis.

As the value is changed the limb is pulled down through the IK target. This is normal. The part of the limb that is 'through' the IK target is in FK.

Image:Num IK Bones = 1 A.jpg

In this image the Limb IK Pos on the legs is set to 1.0...

Image:Num IK Bones = 1 B.jpg

...with this setting the lower leg can now be rotated in FK.

See Also:

Manipulating the Rig

CAT's IK System

Retargeting

Retrieved from "http://cat.wiki.avid.com/index.php/Limb_Animation_Controls"


Animating in Stretchy Bones Mode

Working in Stretchy Bones Mode

Stretchy Bones Mode is designed to allow you to create bounce and stretch animations, interactively in the viewport, simply by dragging the rig elements around.

Image:Animating in Stretchy Bones Mode 1 - Alien rig.jpg

Alien rig

Image:Animating in Stretchy Bones Mode 2 - pulling arm.jpg

Pulling the elbow stretches out the adjacent bones

Image:Animating in Stretchy Bones Mode 3 - dragging ribcage.jpg

Dragging the ribcage stretches the spine

As you make the changes with Auto Key selected the animation is stored as scale keys in the rig bone's PRS controllers. These keys can be accessed in the Curve Editor as normal.

Stretching Limbs

To stretch put a limb all you have to do is drag out the palm.

Image:Animating in Stretchy Bones Mode 4 - palm selected.jpg

Palm selected

Image:Animating in Stretchy Bones Mode 5 - stretched limb.jpg

Moving the palm stretched the limb

See also

CATModes

Hierarchy Panel

Manipulating Spines

Retrieved from "http://cat.wiki.avid.com/index.php/Animating_in_Stretchy_Bones_Mode"


CATModes

Setup Mode: In Setup Mode you create and modify your CAT rig. You can also add or remove bones later even after an animation was already finished. If your character is already skinned and you want to adjust bones, make sure to go to frame 0 and uncheck "Always Deform" in the Advanced Parameters rollout of the Skin Modifier. "Always Deform" off will allow you to edit bones without effecting the mesh.

Animation Mode: In Animation Mode you animate your character.

Stretchy Bones Mode: Stretchy Bones Mode is a special animation mode for automatic bones stretching. The difference to Animation Mode is that bones stretch automatically when you push away the parent bone. So for instance you can move the ribcage anywhere you want and the spines will follow (stretch) automatically. In Animation Mode the ribcage's movement is restricted to the spine length. Only manual scaling of the spine bones will allow you to move the ribcage up in Animation Mode. Also, Stretchy Bones Mode is useful to create cartoony-like walk cycles in CATMotion. For example if you choose a very long Step Length in the CATMotion Global settings, the legs are likely not long enough to reach the foot platform. In Stretchy Bones Mode, the legs will automatically stretch to fit the foot platform.

To go into Animation Mode:

  1. Absolute Layer icon Create an Absolute layer to animate into.

    Note:

    It is impossible to change out of Setup Mode until an animation layer is present.

  2. Animation Mode drop down list Click on the Animation Mode drop down list.

  3. Animation Mode icon Select the Animation Mode icon.

    You are now ready to start keyframing.

To go into Stretchy Bones Mode:

  1. Absolute Layer icon Create an Absolute layer to animate into.

  2. Animation Mode drop down list Click on the Animation Mode drop down list.

  3. Stretchy Bones Mode icon Select the Stretchy Bones Mode icon.

    You are now ready to start keyframing in Stretchy Bones Mode.

See Also

Introduction to Keyframe Animation

Animating in Stretchy Bones Mode

Retrieved from "http://cat.wiki.avid.com/index.php/CATModes"


Introduction to Keyframe Animation

CAT uses a layer based animation system. That means that all keyframes are created in layers. There are two main types of layer: Absolute Layers and Adjustment Layers.

Absolute layers are used to create new animation. Standard 3ds Max animation controllers are used to store all of the transforms in the same way as if you were animating as normal with any standard 3ds Max object.

Adjustment layers are used to tweak existing animation. Keyframes in an adjustment layer offset existing layers below them in the stack, including CATMotion.

Tip:

Before you can begin animating you have to be in an active layer and be out of Setup Mode!

Keyframe animation in CAT is as simple as selecting the element you wish to animate and transforming it in the viewport. A CATRig is set up so that you can just push it around into the pose you require.

Because your animation is stored in standard 3ds Max animation controllers you can create and edit your animation as you are used to. Keyframes can be edited in Track View as normal.

How various rig elements and sub-elements relate to each other is dictated by their setup parameters, accessed in the Modify panel. Some rig elements have extra animation parameters too; most notably the limbs, palms, and ankles.

Tip:

Before you skin up your rig you may wish to make a few trial animations to make sure you are happy with the way the rig behaves.

See Also

CAT's IK System

Palm Animation Controls

Digit Manager

Limb Animation Controls

Foot Pivot System

Retrieved from "http://cat.wiki.avid.com/index.php/Introduction_to_Keyframe_Animation"


Palm Animation Controls

As well as holding the same Limb Animation rollout as the rest of the limb the Palm has its own, unique functionality. These include the Digit Manager and the Palm Animation rollout. The same controls are available for ankles.

Palm Animation rollout

Image:TargetAlignSlider.jpg

Target Align: The Palm Animation rollout has a single slider on it called Target Align. The Target Align value lets you control whether the palm inherits the rotations of the IK target or not.

When the Target Align value is set to 0.0 the palm will move with the IK target but will stay aligned to the last bone on the limb (forearm on a human).

Image:RotateIKTarget NotTargetAligned.jpg

E.g. of palm not inheriting IK target rotations

Image:RotateIKTarget TargetAligned.jpg

When the Target Align value is set to 1.0 the palm inherits both positions and rotations from the IK target.

Digit Manager

Digit controls include a digit manager with advanced digit modifiers.

See also

Digit Manager

Retrieved from "http://cat.wiki.avid.com/index.php/Palm_Animation_Controls"


Digit Manager

The Digit Manager provides a powerful interface for controlling the digits on a palm. The Digit Manager rollout is found in the Animation panel on a selected palm. It has two parts, Preset Poses and Digit Modifiers.

Table of contents

1 Preset Poses

2 Digit Modifiers

2.1 Spread

2.2 Bend

2.3 Roll

2.4 Curl

3 See Also:

Preset Poses

Image:Digit Manager - Preset Poses.jpg

Weight: The ratio that the highlighted preset has on the digits. This allows you to blend on a preset.

Image:Digit Manager - Save Pose button.jpg Save the current digit rotations as a new pose preset.

Image:Digit Manager - Remove Pose button.jpg Delete a pose preset from the Preset Poses listbox (not from the hard drive).

Digit poses are held in the Preset Poses list box. Each pose stores the rotations for all the digits present when a pose preset is saved. These rotations can then be loaded onto any other palm.

If the selected palm has fewer digits than those of the pose preset the extra digits are ignored. If the palm has more digits the extra digits will receive no rotation data.

Each pose preset can be weighted, allowing you to blend from one pose to another or to mix poses to create a new preset.

To load a Digit Pose:

The digit rotations are applied immediately.

To blend on a Digit Pose:

  1. Click once on the chosen pose in the Preset Poses list box.

  2. Drag up the weight in the Preset Weight spinner.

The digits will blend from their existing rotations towards the rotations of the selected preset.

To save a pose:

  1. Edit the digits to the desired pose.

  2. Image:Digit Manager - Save Pose button.jpg Click the Save Pose button.

  3. Enter the new pose name and save.

Tip:

By default digit poses are held in \3dsmax\plugcf\CAT\HandPosePresets\

Tip:

You are not limited to using CAT’s digit manipulation controls. You can also select individual digit bones in the viewport and transform them as normal.

Digit Modifiers

Image:Digit Manager - Digit Modifiers.jpg

The Digit Modifiers provide tools to enable you to manipulate the digits, either singly or as a group. Selected digits can be transformed parametrically with the Spread, Bend, Roll and Curl spinners.

To select the digits you wish to modify:

Spread

Spread rotates the selected digits away/towards each other from the base of the digit.

Image:Digit Manager - Spread1.jpg Image:Digit Manager - Spread2.jpg

Bend

Bend rotates the selected digits up and down from the base of the digits.

Image:Digit Manager - Bend1.jpg Image:Digit Manager - Bend2.jpg

Roll

Roll rotates the selected digits around their length.

Image:Digit Manager - Roll1.jpg Image:Digit Manager - Roll2.jpg

Curl

Curl rotates the all the digit bones up and down.

Image:Digit Manager - Curl1.jpg Image:Digit Manager - Curl2.jpg

Tip:

All modifications are relative to the existing rotations.

To curl up the fingers on a hand:

  1. Select the palm.

    Image:Digit Manager - Curl3.jpg

  2. Image:Animationpanel.jpg Go to the Animation panel.

  3. In the Digit Manager, highlight the digits you wish to edit.

    Image:Digit Manager - Curl4.jpg

  4. Drag the Curl spinner.

    Image:Digit Manager - Curl5.jpg

The fingers curl in.

See Also:

Palm Animation Controls

Retrieved from "http://cat.wiki.avid.com/index.php/Digit_Manager"


Spines

Image:Spines.jpg

Spines in CAT are used to connect two hubs together. Spines provide special functionality that speeds up your workflow, enables sharing of animation data between a more diverse range of rigs, and allows more sophisticated IK Tools.

Adding Spines

Editing Spines

Manipulating Spines

Retrieved from "http://cat.wiki.avid.com/index.php/Spines"


Adding Spines

To creates a spine, select a hub that you would like the spine to be attached and either...

Image:HubModifyRollout.jpg

or:

See Also

Hubs

Spines

Retrieved from "http://cat.wiki.avid.com/index.php/Adding_Spines"


Editing Spines

Image:SpineModify.jpg

Spine Name: The name of the spine. (See Spine Naming)

Num Bones: The number of bones in the spine.

Length: The length of the spine.

Note:

this value represents the accumulated lengths of all the spine bones. When you change this value, the spine actually changes the lengths of all the spine bones. There is no actual 'Spine Length' value stored in the spine.

Size: The average size of the spine bones. You can use this value to quickly resize all the spine bones, or you can edit them all individually.

Procedural/FK Radio Buttons: Configure whether this spine will use the built in procedural spine algorithm, or standard FK.

Table of contents

1 Procedural Spines

1.1 Absolute/Relative

1.1.1 Relative Spines

1.1.2 Absolute Spines

1.2 Spine Curvature Graph

1.3 Spine Direction Vector

2 FK Spines

Procedural Spines

When a spine is set to be 'Procedural', the motion of all the spine bones is defined by an algorithm. The CAT spine algorithm tries to always bend the spine in a way that makes sense for that spine. The bend amount for each bone is defined by the 'Spine Curvature' graph.

Procedural spines have many benefits.

Absolute/Relative

Image:AbsRelUIAbs.jpg

If you select any bone in a procedural spine and go to the Motion Panel, you will see a small rollout called 'Spine Motion'. There is one slider on this rollout and it defines the Absolute/Relative behaviour of the spine.

Relative spines produce a nice smooth C shaped curve, while Absolute spines create a S shaped spine.

Relative Spines

When you select the tip hub on a relative spine and rotate the hub, the hub will move in an arc around the base of the spine.

Relative spines are typically used when the curvature of the spine is more important than the exact location of the tip hub. This is why we default necks to being relative. The position of the head is usually less important than the curvature of the neck.

Absolute Spines

When you select the tip hub on an absolute spine and rotate it, the hub should stay approximately stationary.

You should use an absolute spine in the situation where the position of the ribcage is important. For example, on a quadruped, the position of the ribcage is usually more important than the position f the ribcage on a biped. This is because, the front legs of a quadruped are usually on the ground and therefore the position of the ribcage defines how straight the legs are. In this situation, even a small movement of the ribcage can change the shape of the legs and the weighting of your character.

Image:AbsRelFront.jpg

Image:AbsRelUIRel.jpg ' ' Image:AbsRelUIAbs.jpg

In this image, the spine on the left has been set to relative and the spine on the right has been set to absolute. Both ribcages have been rotated by 90 degrees.

Of course in CAT, the Absolute Relative value is animatable and so you can decide throughout your animation how your spines should be behaving at any point in time. In many cases, you may need to animate the settings of your spine to get the very results you desire.

Note:

When animating with a spine set to Absolute, then you will need to move the ribcage and rotate it to get your ribcage in the correct location. The ribcage will not more when you rotate it.

Spine Curvature Graph

Image:SpineCurvatureGraph1_UI.jpg

This graph controls how much the spine links rotate relative to each other. Put another way, it controls how the rotation between the hubs is distributed along the spine.

The spline is edited by adjusting the tangent length spinners and the value spinners at the bottom of the graph.

Tangent: The Tangent spinners control the curve.

Value: The Value spinners controls the start and end values of the rotation weights.

Image:SpineCurvatureGraph1.jpg

Image:SpineCurvatureGraph1_UI.jpg

By Default, the spine bends fairly evenly along its length. As you rotate the tip hub, the spine interpolates the rotation down throughout the spine nodes according to the curvature of the graph.

The following examples are using a spine with the Abs/Rel value set to 1 meaning that this is a relative spine.

Image:SpineCurvatureGraph2.jpg

Image:SpineCurvatureGraph2_UI.jpg

If you change the graph to be flatter at the start and bend sharply up at the end, then your spine will also bend sharply at the end.

Image:SpineCurvatureGraph3.jpg

Image:SpineCurvatureGraph3_UI.jpg

The spine can be configured to cause more bending at the base for the spine.

Tip:

All rotations, including twisting are effected by the graph.

Tip:

The spine colour blends from the colour of the pelvis to the colour of the ribcage. The blend of the colour reflects the falloff on the Spine Rotation Weight graph.

Spine Direction Vector

Image:SpineDirectionVector.jpg

The Spine Direction vector is a line that determines the default direction for the spine. What this means is that when the spine is totally at rest, it should project along this vector. By default the Spine direction vector points along the base hubs length axis. Z for Z axis aligned rigs and X for X-Aligned Rigs. See Understanding Bone Length Axis

Image:SpineDirectionVectorSubObject.jpg

To edit the direction of a procedural spine:

You will get better results from your spine if you ensure the blue line runs close to default curvature of your spine.

Tip:

When creating spines that default to a curve we would recommend that you edit the individual spine bones into position, leaving the hubs (ribcage and pelvis) aligned up and down, as opposed to rotating the hubs to create the curve.

FK Spines

FK Spines behave like a standard hierarchy of bones in CAT. Each bone gets its own layer controller and can be keyframed independently. When you set a spine to be an FK spine, each bone in the spine gets its own Layer controllers for controlling its transform. You can then keyframe each bone in the spine independently giving you very precise You can then do things like dislocate bones in the spine by animating the positions. control.

Note:

It is not possible to convert animation made on an FK spine to be used on a Procedural spine.

Note:

Currently FK Spines do not support the retargeting features found in CAT.

Retrieved from "http://cat.wiki.avid.com/index.php/Editing_Spines"


Tails

CAT Tails are basically long bone chains with a few special features built in to make them more useful for tails.

Image:PantherTail.jpg

Tails are similar to spines except that they have do not end in another hub and they have additional controls. A tail applied to a head could also act as a dreadlock or a horn, etc.

A tail can have between 1 and 100 tail links. Tail stiffness is edited with the Tail Stiffness graph.

Adding Tails

Editing Tails

Manipulating Tails

Retrieved from "http://cat.wiki.avid.com/index.php/Tails"


Adding Tails

Select the hub that you would like to add a new tail to.

Either...

Image:HubModifyRollout.jpg

Go to the Modify Panel and Press on the "Add Tail" button.

or:

Right-Click on the Hub in the viewport and on the Bottom Left quad menu select either "Add Tail" .

See Also

Hubs

Tails

Retrieved from "http://cat.wiki.avid.com/index.php/Adding_Tails"


Editing Tails

Tail Setup

Image:Tail Setup rollout.jpg

The Tail Setup rollout

Name: Edit this field to change the tail name.

Colour swatch: Edits the colour of the tail.

Image:CopyPasteRig_CopyPastePasteMirroredButtons.jpg

Buttons for copying and pasting the tail settings to or from other tails. See Copying and Pasting Rig Parts

Num Links: The number of bones in the tail.

Length: The length of the tail.

Width: The width of the tail.

Height: The height of the tail.

Taper: The taper of the tail.

Image:Add Bone button (Tail Setup rollout).jpg Creates an Extra Bone, linked to the selected bone.

Tail Stiffness

Image:Tail Stiffness graph.jpg

This graph controls the relative stiffness of the tail along its length.

See also

Manipulating Tails

Retrieved from "http://cat.wiki.avid.com/index.php/Editing_Tails"


Using CAT's Naming System

CAT does not define any particular naming scheme. Instead, each rig preset contains a different naming scheme. It is very easy to modify the naming scheme to suit your own productions requirements.

Each bones name is defined by the combination of the CATRigs name, and name of any group the bone belongs to and also the bones local name. Of course, you can set any of the name fields to blank and then this fields will have no effect on the final bones name.

 $<CATRig Name> + <Limb Name> + <Bone Name> + <Bone Seg Name>

The default names given to bones when you create a rig from scratch are only intended as a basis for you to modify and define your own naming scheme.

Table of contents

1 Naming the CATRig

2 Hub Naming

3 Limb Naming

3.1 Limb Bone Naming

3.2 Palm or Ankle Naming

3.2.1 Digit Naming

4 Tail Naming

5 Extra bone Naming

6 Spine Naming

Naming the CATRig

CATRigs are created with their allocated preset name. If you want to have more than one of the same CATRig preset in a scene it is a good idea to give it a unique name.

To change a CATRig name:

Select the CATParent, go to the Modify panel and enter a new name in the Name field in the Character Parameters rollout.

The CATParent is renamed and the entire CATRig hierarchy inherits the new name.

Hub Naming

 $<CATRig Name> + <Hub Name>

Limb Naming

Each limb has a name parameter that you may wish to fill in with an appropriate name.

When you add an arm for example, the new arms limb name parameter defaults to "Arm"

Limb Bone Naming

Limb bones can be divided into segments, and each segment should have a unique name.

Each bone will be assigned a name according to the following scheme.

$<CATRig Name> + <Limb Name> + <Bone Name> + <Bone Seg Name>

If you would like your Right UpperArm bone to be called

 $"FredLUpperarm"

Then you should name the CATRig "Fred", and enter "L" in the the limb name field, and enter "Upperarm" in the bone name field.

When the names get added together the following will result.

 "Fred" + "L" + "Upperarm"

Each bone segment can have a customised name too. The Bone Seg Names only become valid when you have more than one bone segment. The bone seg names default to '1', '2', '3' etc, but you could change this to 'A', 'B', 'C' etc..

Palm or Ankle Naming

The palm or Ankle stores a local name that gets added on to the CATRig name and the Limb name.

 $<CATRig Name> + <Limb Name> + <Palm/Ankle Name>

Digit Naming

Digits are made up of a hierarchy of bones that are all connected together with one digit controller. This is much the same way that limbs work. The digit controller stores a name for the entire digit, and each bone in the digit also stores its own local name.

 $<CATRig Name> + <Limb Name> + <Digit Name> + <Digit Bone Name>

Tail Naming

The Tail is made up of a hierarchy of bones that are all connected together with one tail controller. This is much the same way that limbs work. The tail controller stores a name for the entire tail, and each bone in the tail also store their own local name. Each bones name is the result of adding together the CATRig name and the tail name and the bone name.

 $<CATRig Name> + <Tail Name> + <Bone Name>

Extra bone Naming

Extra Bone names are much simpler than other body parts. Each Extra bone stores its own name, and this gets added on to the CATRig name.

 $<CATRig Name> + <Extra Bone Name>

Spine Naming

The Spine is made up of a hierarchy of bones that are all connected together with one spine controller. The spine controller stores a name for the entire spine, and each bone in the spine also stores its own local name. Each bones name is the result of adding together the CATRig name and the spine name and the bone name.

 $<CATRig Name> + <Spine Name> + <Bone Name>

Retrieved from "http://cat.wiki.avid.com/index.php/Using_CAT%27s_Naming_System"


Customizing IK using constraints

#REDIRECT Customizing IK Using Constraints

Retrieved from "http://cat.wiki.avid.com/index.php/Customizing_IK_using_constraints"


Customizing IK Using Constraints

(Redirected from Customizing IK using constraints)

One very cool feature of CAT's IK is that it is very customizable. You can use all of Max's constraint systems, even script into the limb. Below I will describe two leg setups that you may find useful, Knee LookAt and Orientation Constrained.

Knee LookAt

A very popular technique when using IK on legs is to have the knee look at a knee target. With CAT this is done by using an extra bone as the target object.

To setup a LookAt Knee:

The extra bone is created at the end of the bone it is created off

Note:

It is important to create the extra bone off the limb it will associated with because even after an extra bone is relinked to the pelvis, it is still part of the limb group and so will use the limb weight as its local weight. This is important for when you are working with feathered weighting.

Orientation Constrained

You would use an orientation constrained setup when you would like the leg to inherit motion off both its parent the pelvis, and the Foot platform.

To setup an orientation constrained leg:

Now when you rotate the FootPlatform the whole leg will rotate with it

To blend the leg rotation between the FootPlatform and the pelvis:

Saving up constraint settings

To save out your IK constraint settings set up the configuration in a layer and then save out the layer as a clip file with no keyframes on it. When you want to add a new absolute layer with the same configuration simply load in the layer (e.g. LookAt Knee config.clp).

Note:

Using these constraint systems will mean that it not be possible to blend to FK on the same layer. To blend to FK blend to another animation layer where the limb doesn't have this system added.

Retrieved from "http://cat.wiki.avid.com/index.php/Customizing_IK_Using_Constraints"


Animating with CAT

CAT2's new F/IK rig manipulation system lets you just push the rig around into the pose you want, whether in IK or FK. This means that CAT has can be animated with unparalleled immediacy and efficiency. It isn't necessary to have several windows open at any one time just to interact with your rig.

CAT2's IK system is unparalleled and provides big advances is flexibility and power over other systems.

For walkcycle sequences, CATMotion allows you to create a completely user defined walkcycle and then direct the character around the scene without the bother of placing individual footsteps. Footprint collision detection provides the icing on the cake.

Animation is created in CAT's powerful, non-linear animation system the heart of which is the Layer Manager. One of the big advantages of CAT's NLA system is that it you can work directly in the selected animation layer, without having to go back out and tweak the source animation elsewhere.

Image:Killer plant eats monkey.jpg

Image courtesy of Deck13. From the game 'Jack Keane'

Image courtesy of Nox

Introduction to Keyframe Animation

Starting a New Animation

Adjusting Existing Animation

CAT's IK System

Animating in Stretchy Bones Mode

Animation Layering

Manipulating the Rig

Animation Controls

Retargeting

Editing Keyframes in Track View

See Also

Working With Motion Capture Data

CATMotion

Manipulating the Rig

Effect Hierarchy

Animating in Stretchy Bones Mode

CATBone Hierarchy Menu

CAT's IK System

Retargeting

Editing Keyframes in Track View

Retrieved from "CAT 2.4 CHM help file (local)" + "http://cat.wiki.avid.com/index.php/Animating_with_CAT"


Animation Layering

CAT's layering system is the most powerful animation system in the world today. No other system allows you to work with such ease and flexibility as CAT. Animation layering was not a feature added on top of an existing architecture, rather, it was a fundamental part of CAT from version 1.0.

All layer management is performed using a simple rollout called the The Layer Manager.

Table of contents

1 CAT's Layering Concepts

1.1 On every bone you will see the Layer Manager

1.2 Layers are Applied to an Entire CATRig

1.3 All Basic Layers Contain Standard Max Controllers

1.4 See Also:

CAT's Layering Concepts

Image:LayerManager.jpg

On every bone you will see the Layer Manager

You only need to select any bone in a CATRig and go to the Motion Panel in max to see the Layer Manager.

Layers are Applied to an Entire CATRig

With CAT's layering system, whenever a new layer is added, that new layer applies to every bone in the CATRig. We do not have such a thing as an 'arm' layer or 'hand' layer. When you add a new layer, every bone gets that new layer, and you can choose the parts of the CATRig that you do not wish to use the new layer. This process is called Feathered Weighting.

Initially you may think this is a restriction, but it is actually a feature.

All Basic Layers Contain Standard Max Controllers

Each layer in CAT is simply storing Max controllers. The layer system is simply a mechanism for holding and managing Max controllers. All Max controllers are supported by CAT's layering system. This includes all the different keyframe controllers from Bezier, TCB, Linear, Quaternion, Euler, etc, to all the procedural controllers like the powerful set of constraints and script and expression controllers.

See Also:

The Layer Manager

Layer Types

CATModes

Blending Between Layers

Feathered Weighting

Layer Transform Nodes

Ranges View

Layer Time Warps

Copying and Pasting Animation Layers

Collapsing Animation Layers

Retrieved from "http://cat.wiki.avid.com/index.php/Animation_Layering"


Animation Controls

Limb Animation Controls

Palm Animation Controls

Digit Manager

Foot Pivot System

Hub Hierarchy Controls

Retrieved from "http://cat.wiki.avid.com/index.php/Animation_Controls"


Starting a New Animation

New animation is created in Absolute layers. Absolute layers include CATMotion, absolute [keyframe animation] layers and imported motion data (which is loaded into an absolute animation layer).

Before you can start animating you need an absolute layer to create your animation in.

To create an Absolute layer:

  1. Select any part of your CATRig.

  2. Go to the Layer Manager rollout in the Animation panel.

    Image:StartinganewAnimation1.jpg

  3. Image:BlendingBetweenLayers2.jpg Click on the Create Absolute button.

    Image:StartinganewAnimation2.jpg

    An Absolute Layer is created in the Layer Manager listbox.

  4. Image:StartinganewAnimation3.jpg In the Mode drop down menu choose Image:StartinganewAnimation4.jpg Animation Mode.

You are now ready to start keyframing.

Assign new animation layers as you need them. It is very useful to break your animations down into manageable segments.

See Also

The Layer Manager

Adjusting Existing Animation

Blending Between Layers

Ranges View

Layer Transform Nodes

Retrieved from "http://cat.wiki.avid.com/index.php/Starting_a_New_Animation"


The Layer Manager

The Layer manager is the interface to the CATLayer system. As you animate with CAT, you will use this rollout more than any other part of CAT. This rollout is the center of your layering workflow. Here you can add, remove, move up and move down layers, adjust and animate global or local layer weightings and much more.

To access the Layer Manager rollout:

Layer Manager Rollout

Image:LayerManager.jpg

The CAT Layer Manager

Image:LayerManagerCATModes.jpg

CATModes: Select the CATMode you would like to put your CATRig into. See CATModes

Image:LayerManagerColorModes.jpg

ColorModes: Set the current Colour Mode that the CATRig is currently using.

Image:LayerManagerRangesView.jpg

Ranges View: Display the 'Ranges View' for all the layers. See Ranges View

Image:LayerManagerWiki.jpg

CAT Wiki: Press this button to launch the CAT Wiki.

Image:LayerManagerAddLayer.jpg

Add new Layer: Add a new layer to the layer stack. Press this fly-out button, drag down to the preferred layer and release to create a new layer. See Layer Types

Image:LayerManagerRemoveLayer.jpg

Remove Layer: Remove the currently selected layer from the layer stack.

Image:LayerManagerColapseTimeRange.jpg

Collapse Time Range: Collapse a time range of your animation to an existing or new layer. See Collapsing Animation Layers

Image:LayerManagerKeyLayer.jpg

Key Current Pose: Key the current pose of the character into the selected layer when Auto Key is on or offset the current pose of the character into the selected layer when Auto Key is off.

Image:LayerManagerCopyLayer.jpg

Copy Layer: Copy the currently selected layer ready for pasting.

Image:LayerManagerPasteLayer.jpg

Paste Layer: Paste the copied layer into the current layer stack. This tool is very useful for quickly duplicating layers on one CATRig, or for copying animation from one rig to another in the same scene. It is better than using the animation saving and loading tools because there is some types of controllers that cannot be saved using the Clip file saver. An example of this would be a reaction controller.

Image:LayerManagerMoveUp.jpg

Move Layer Up: Move the currently selected layer up one position in the layer stack

Image:LayerManagerMoveDown.jpg

Move Layer Down: Move the currently selected layer down one position in the layer stack

Image:LayerManagerTransformNode.jpg

Layer Transform Node: Create a transform node for the current layer in the layer stack. Transform nodes are available for absolute layers only. See Layer Transform Nodes

CATModes

Ranges View

Layer Types

Collapsing Animation Layers

Layer Transform Nodes

Retrieved from "http://cat.wiki.avid.com/index.php/The_Layer_Manager"


Ranges View

Image:RangesView.jpg

The Ranges View in CAT gives you the ability to move and re-time all the keyframes in a layer at once. The Ranges View is CAT's Non Linear Animation(NLA) view. You may have an animation that you created but you need to change the timing, speed, or trim off the end of the animation. This is what the Ranges View is for.

Note:

all the functionality of the 'Ranges View' is an extension of the standard 3dsmax Ranges feature. To understand all the features of the ranges view, it may help to play with the ranges on a single controller on a simple object. Create a sphere, add some keyframes and then go to the standard max ranges view and start editing the range bar. For more detailed information on the 3dsmax range bar feature, please read the 3dsmax documentation.

To edit ranges:

  1. Ranges button Click on the Ranges button in the Layer Manager rollout.

    Ranges View

    The layers will be displayed as individual tracks.

  2. The ranges for the layers can then be squashed, stretched and moved as normal in 3ds max. They can also be reversed.

The range for a layer is defined as the 1st keyframe on any track on any part of the rig and the last keyframe. If your ranges extend before the start, or beyond the end of your animation, then there is a possibility that you have rogue keyframes on one of your bones. 3dsmax creates a keyframe at time 0 whenever you autokey a an object for the 1st time. This often causes keyframe to exist where an animator did not intend.

Whenever you use the ranges view to edit the keyframes on a layer, all the keyframes a on the rig actually get moved. You can see this clearly by selecting a bone with keyframes and then editing the layer range bar.

Note:

If you have a constraint on a layer, it can cause the ranges view to be extended to infinity. You can still use the ranges view to move your keyframes, but it is not possible to see the start and end times fop the layer.

Table of contents

1 Moving your keyframes in time

2 Squashing and Stretching your keyframes

3 Reversing your Animation

4 Setting the looping options for a layer

1 Manually Setting Layer Time Range

2 See Also

Moving your keyframes in time

To move all the keyframes on a layer, simply click in the middle of the bar and drag to the left or right. All the keyframes for that layer are moved.

If you have a complex character, the movement might be a little bit slow or jerky. Remember that you are moving many keyframes at once and the entire rig is updating repeatedly as you drag the keyframes.

Squashing and Stretching your keyframes

You can make an animation faster or slower, simply by dragging the range bar end points. To slow down you entire animation, make the range bar longer by moving the end of the bar to the right, or the start of the left.

To speed up your animation make the range bar shorter by moving the start of the bar to the right, or the end of the bar to the left.

Reversing your Animation

You can reverse the direction of your animation by dragging the start of the range bar past the end. All the keyframes get reversed and now your animation will play backwards to the way it was playing before.

Setting the looping options for a layer

Image:RangesViewOutOfRangeButton.jpg

To get the looping options for this layer, press on the 'Parameter Curve Out-of-Range Types' button.

Image:LoopingOptions.jpg

You may have an animation on layer that you would like to repeat in some way. This could be a simple action like a breathing motion on a ribcage, or a while walk cycle. You can use the ranges view to set the looping options for the entire layer.

Remember that each controller on the rig loops separately, so to get the whole layer to loop at the same time, you may want to set the layer time range manually. See below.

Manually Setting Layer Time Range

Each controller in the rig has its own time range defined by the 1st and last keyframes on that controller. This means for example that if you want your animation to loop, then each controller will loop according to its won time range. Very quickly the whole animation will get out of synch and look incorrect. If you set the time range manually, you can force all the controllers on the character to use exactly the same time range thereby ensuring a correct loop.

To use Position Ranges on an animation layer:

  1. Right Click on the toolbar area of the Curve Editor.

Image:RangesViewShowRangesToolbar.jpg

  1. From the menu select Show Toolbars/Ranges: Dope Sheet

     Ranges: Dope Sheet toolbar

  2. Position Ranges button Select the Position Ranges button.

  3. Edit the Layer Range as usual.

Note:

once you have set your layer to Manual ranges, it is not possible to move the keyframes in time anymore. This is because when you move the range bar, it is actually moving the loop time for your controller, not the actual keyframes. If you need to move the keyframes again, you can 'Re-couple' the ranges by pressing on the 'Recouple Ranges' button. See below.

Image:RangesViewRangesToolbarReCoupleRanges.jpg

At some point you may wish to go back to standard range editing. You can do this by pressing on the 'Recouple Ranges' button. This resets all the ranges to their default behavior where the time range is defined by the 1st and last keyframe.

See Also

The Layer Manager

Layer Time Warps

Retrieved from "http://cat.wiki.avid.com/index.php/Ranges_View"


Layer Types

The strength and versatility of CAT's layering system is its support for a variety of different layer types. Each layer type provides different functionality and is useful for different purposes.

Table of contents

1 Layer Stack Evaluation

1.1 Absolute Layers

1.2 Relative Local

1.3 Relative World layers

1.4 CATMotion Layers

Layer Stack Evaluation

As the layer stack evaluates from top to bottom each of the layers is applied one after the other.

Absolute Layers

Absolute Layers overwrite the previous layer's animation with a new animation. This means that 2 Abs layers after each other mean that only the 2nd layer has any effect. Abs layers are intended to provide the basic animation layer that you will work on 90% of the time.

Relative Local

Relative Local are additive and local to the previous layers in the layer stack. Sometimes referred to as adjustment layers, these layers are good for editing the pose of your character, or applying adjustments to your animation. They apply their effect on top of the result of the previous layer. The effect of the Relative Local layer is always affected by the previous layer in the layer stack.

What this means is that, if you have a rotation offset applied in the X axis on a relative local layer, then as the animation of the previous layer move and rotate the head, the head will always be rotated according to its own local axes. A good way to visualize the way this layer works is to imagine you have 2 objects linked together in Max. The relative local layer has the same effect as the child object. If you rotate the parent, then the child will move is a circle around the parent. The child’s offset is always in the coordinate space of the parent, and this is exactly how relative local layers work.

Relative World layers

Sometimes referred to as Adjustment World are very useful for applying adjustments, but they always apply their adjustments in world space. This means that they ignore the results of the previous layers and always apply their effect the same way. These layers are more useful for doing things like editing the exact location of a foot plant during a walk sequence. If you were to use a Rel Local layer to adjust the position of a foot plant and then later rotated the foot slightly on your Abs layer, then the foot location would change because the Rel L offset would be rotated also. This is the situation to use a Rel W layer.

Try playing around. There are many cases that suit a local space adjustment and many more that suit a world space adjustment, and learning these layering tools will allow you to make the most of CAT’s powerful layering tools and also speed up your day.

CATMotion Layers

CATMotion layers are used to create walkcycle animation. See CATMotion

Assigning Controllers to Layers

Collapsing Animation Layers

Retrieved from "http://cat.wiki.avid.com/index.php/Layer_Types"


Assigning Controllers to Layers

With any of the basic layer types(Abs, +L, +W), you can assign new controllers to any bone to change the behaviour of the bone, or to change the interpolation of the keyframes.

To change your rotation interpolation from Euler to Quaternion

Biped in 3dsmax uses quaternion interpolation, and so many artist have developed workflows based around TCB keyframing. Also some game exporters have been written with the assumption that you are using Biped, and that your keyframe interpolation is TCB.

TCB quaternion interpolation provides better rotation interpolation in many cases and is therefore often viewed as a better tool for animation. The down-side to using TCB quaternion interpolation is that you are unable to view the animation in the form of curves in a curve editor.

Image:AssigningControllersToLayers AssignControllerRollout_LayerSelected_RotSelected.jpg

Image:AssigningControllersToLayers_AssignControllerRollout_AssignTCB.jpg

Image:AssigningControllersToLayers AssignControllerRollout_TCBAssigned.jpg

Retrieved from "http://cat.wiki.avid.com/index.php/Assigning_Controllers_to_Layers"


Collapsing Animation Layers

Image:LayerManagerColapseTimeRange.jpg

Use the Collapse Layers button to convert all the current animation in your layer stack into 1 layer. CAT will plot all your animation down to 1 layer using a consistent sampling.

Collapse to Existing Layer

Image:CollapseLayers_CollapseToExistingLayer.jpg

If you select an existing layer in the layer manager and press the 'Collapse Layers' button, all the current animation will be plotted onto the selected layer.

Note:

It is important that the selected layer does not contain animation as it will be overridden with new keyframes.

Collapse to New Layer

Image:CollapseLayers_CollapseToNewLayer.jpg

If you select the (Available) layer and press the 'Collapse Layers' Button, all the animation on your CATRig will be plotted to a new layer.

Alert:

There is a bug in this feature that will crash CAT. Please read the Collapsing Layers to a new Layer Causes crash article for more information.

See Also:

The Layer Manager

Retrieved from "http://cat.wiki.avid.com/index.php/Collapsing_Animation_Layers"


Collapsing Layers to a new Layer Causes crash

Unfortunately, with version 2.5 of CAT, there is a serious bug in the layer collapsing tool.

Bug

If you select the (Available) layer and press the 'Collapse Layers' Button, you will be presented with the following dialog.

Image:CollapseLayers_CollapseToNewLayer.jpg

If you press 'Collapse', then CAT will successfully collapse all the animation to a new layer, but upon completion, CAT will crash when it tries to redraw the LayerManager.

Workaround

Please follow this link and install the script that fixes the crash.

http://www.catoolkit.com/forum/forum_posts.asp?TID=1299&PN=1&TPN=1

See Also

Collapsing Layers

Retrieved from "http://cat.wiki.avid.com/index.php/Collapsing_Layers_to_a_new_Layer_Causes_crash"


Layer Time Warps

Time Warp curves enable you to control the velocity of an entire animation layer with a single spline curve. Matrix bullet time effects were never easier! The Time Warp curve can be found if you select the CATParent and open it up in the Curve Editor. They can also be quickly accessed from the Time Warp Curve Editor button Time Warp, Curve Editor button in the Layer Manager.

Curve Editor showing Time Warp curve

See also:

The Layer Manager

Ranges View

Copying and Pasting Animation Layers

Retrieved from "http://cat.wiki.avid.com/index.php/Layer_Time_Warps"


Copying and Pasting Animation Layers

You can now copy and paste animation layers, including between rigs. It is also possible to instance layers which means that different rigs can reference the same animation layer.

A character with an instanced animation layer can still be retimed, time warped and transformed. This application is particularly useful for crowd sequences.

See Also:

The Layer Manager

Layer Transform Nodes

Layer Time Warps

Retrieved from "http://cat.wiki.avid.com/index.php/Copying_and_Pasting_Animation_Layers"


Layer Transform Nodes

Image:LayerTransformNode.jpg

Transform Gizmos are used to transform animations in space. You can move or rotate the Transform Node to change the position or direction of an animation clip. It appears as if the character is linked to the transform node, but it is not. If fact each layer has its own transform node. Transform Nodes primary purpose is to allow you to reuse animations, simply by moving and rotating them in space.

The name of your Transform Node will be "[current animation layer name]+Transform". So if you have renamed your animation layer, you can just turn off and on again the button "Display a transform Node for this layer" and the name of the Transform Node will update.

Transform Nodes are available for absolute layers only. Of course each absolute layer can have its own Transform Node.

Transform Nodes are animatable, but they don't support custom controller assignments and cannot be linked to other objects. If you wish to animate your transform node, it is not recommended to animate the rotation. Basic animation only should be applied. This it not a method for general animation.

Creating the Transform Node

There are three different ways to create a Transform Node:

Image:LayerManagerTransformNode.jpg

Transform Node beneath the pelvis

Simply click on the button "Display a transform Node for this layer". This will create a Transform Node with a specific offset to the pelvis. This offset is defined by the pose in the Setup Mode. The distance between the origin and the pelvis defines the offset. In Animation Mode this offset is always respected even if you move the pelvis down, so it can likely happen that the Transform Node is created below the feet for example.

Transform Node at the location of a bone in CAT

If you click on the button "Display a transform Node for this layer" while holding 'Ctrl', the transform Node gets created at the position of the selected bone.

Example: If you select the foot of a character, and hold 'Ctrl' and press on the Transform Node button, then the Node will appear exactly at the location of the foot. You could then turn on a different layer and also holding ctrl, turn on the transform Node for that layer. Now you can align up the foot locations on both layers by using the Align tool in Max to align the transform Nodes for both layers.

Transform Node at the origin

If you click on the button "Display a transform Node for this layer" while holding the 'Alt' key, then the Node gets created displaying exactly how much offset has been applied to that layer. Initially this is nothing, so the Node appears on the origin. If you type in a new position for the Node, then the animation has been moved by exactly this amount. This tells you exactly how much transformation has been applied to a layer Example: For example, you load a walk cycle loop and want to move it forwards by exactly 60 units because this is how long the loop is.

Layer Transform Node Rollout

Image:LayerTransformNodeRollout.jpg

Note:

Only bones with the 'Apply Transforms' check box checked in the Hierarchy Panel will be effected by the transform node. See Hierarchy Panel

Display Ghost

Image:LayerTransformNodeGhost.jpg

When a transform node is created, you can use it to display a ghost of the animation on a particular layer. This is particularly useful if you are blending between two different layers. The ghost can tell you what animation is being played back on a layer even if that layer is disabled, or your character is using a completely different animation on a separate layer.

Animation Looping

Start Time: The frame that the animation loop starts on.

End Time: The frame that the animation loop ends on.

Remove Displacement: When checked the overall displacement of the character is removed.

This feature removes the overall movement of your rig. The Transform node measures the movement of your pelvis from the time specified in the start time, to the time specified in the end time, and then calculates the overall movement of your rig for this time frame.

It then removes this displacement over the course of your animation. This feature is equivalent to the 'In Place Mode' in character studio biped.

This function could described as a walk on spot mode for hand animation. It works by displacing the animation linearly from the start and end points specified. The idea is that the movement in space is removed so that the character is left animated on the spot. This tool is mainly for game animators who are creating walk cycles for game assets.

Example:

If you are creating a walk cycle and you need to export it to your game engine without any overall displacement, then this features can remove the forwards motion from your character leaving only the walking. you can then turn this feature on and off when ever you need to export.

Using Layer Transform Nodes

CAT allows you to use the layer transform gizmo to transform your animation layers around in the viewport. This includes moving, rotating and scaling the data, both uniformly and non-uniformly. In CAT2 the layer transform gizmo is now animatable. The layer transform gizmo is particularly useful for lining up clips for blending between them.

To transform your animation layer with the layer transform gizmo:

  1. Select the layer you wish to transform in the Layer Manager.

    Layer Manager

  2. Layer Transform Gizmo button Click on the Layer Transform Gizmo button.

    Image:Transforminglayers gizmoinviewport.jpg

    The Gizmo appears in the viewport (in this case at the feet of the rig).

  3. Select the Transform Layer Gizmo and move it.

    Image:Transforminglayers movinggizmo.jpg

    The rig and its entire animation is moved too!

    Image:Transforminglayers movedgizmo.jpg

The animation keys for the layer transform gizmo can be found in the Transform branch, on the CATParent under the selected layer in the Curve Editor. They can also be quickly accessed through the Ranges View.

Animation keys for the Layer Transform Node in the Curve Editor

See Also

The Layer Manager

Hierarchy Panel

Retrieved from "http://cat.wiki.avid.com/index.php/Layer_Transform_Nodes"


Blending Between Layers

Blending between layers is often as simple as animating the Global Weight value for the top layer. Often this will be all you require. Sometimes, however you will wish to blend one limb separately to another or perhaps simply turn off some elements (e.g. the legs) to use the animation from another layer, below the current layer on the stack. This is called feathered weighting. One example of this would be where you are using keyframe animation for the upper body and CATMotion for the legs.

Global weights are managed with the Global Weight spinner/curve editor. Local weights have their own spinner and curve editor.

Weights View is stored on the CATParent. However you can also access the global and local weights directly.

To navigate directly to the Global Weight Curve Editor:

Track View opens up to display the layers in the layer stack. The curves controlling the layer weights for the selected layer can now be viewed/edited.

To blend on an absolute layer:

  1. Image:BlendingBetweenLayers2.jpg Go to the frame you wish to blend to and add another absolute layer in the Layer Manager rollout.

    The absolute layer overrides existing animation layers and the rig remains stationary on the frame that the layer is created.

  2. Rename it as required.

  3. Image:TrackViewSmall.jpg Click on the Curve Editor button beside Global Weight in the Layer Manager rollout in the Animation panel.

    Image:BlendingBetweenLayers3.jpg

    Global Weight is displayed, showing the existing layers for the rig. In the image above there are three layers, PreHit, Reactor and Gets Up.

  4. Add Key button Create a key on the frame you wish to blend on from and set the weight to 0.0.

  5. Add Key button Create another key on frame you wish to blend on at and set the weight to 1.0.

    Image:BlendingBetweenLayers4.jpg

The layer will now blend on and the character will be controlled by the new layer.

To navigate directly to the Local Weight Curve Editor:

  1. Image:TrackViewSmall.jpg Select the rig element you wish to edit the local weight for and click on the Local Weight Curve Editor button in the Layer Manager rollout in the Animation panel.

    Track View opens up to display the layers in the layer stack. The curves controlling the layer weights for the selected object, in the selected layer can now be viewed/edited.

See Also

Feathered Weighting

Retrieved from "http://cat.wiki.avid.com/index.php/Blending_Between_Layers"


Feathered Weighting

When you add a new layer, every bone gets that new layer, and you can choose the parts of the CATRig that you do not wish to use the new layer. This process is called feathered weighting. Feathered weighting is achieved by editing the local weights of individual rig elements.

To turn down the weight on the left arm only (feathering layer weights):

  1. Select the left arm.

  2. Go to the Local Weight spinner and turn it down to 0.

The arm will be no longer be affected by the current layer.

See Also

Blending Between Layers

Retrieved from "http://cat.wiki.avid.com/index.php/Feathered_Weighting"


Adjusting Existing Animation

Using CAT’s adjustment layers in the Layer Manager you can non-destructively edit existing animation, including CATMotion, absolute keyframe animation, motion capture data and even other adjustment layers.

Keyframes in an adjustment layer offset the existing animation. For example you could use an adjustment layer to control the head movements of a rig walking with CATMotion. The head movements would applied on top of the existing CATMotion animation.

There are two types of adjustment layer, local and world adjustment layers. Local adjustment layers are useful for offsetting the a rig element relative the to rig (e.g. tilting down the head). World adjustment layers are particularly useful for offsetting IK targets, such as Foot IK targets in a mocap sequence.

Local Adjustment Layers

Local adjustment layers are the same as relative layers in CAT1. They offset animation in the coordinate space of the rig.

To create a Local Adjustment layer:

  1. Select any part of the rig.

  2. Go to the Layer Manager rollout in the Animation panel.

  3. Make sure Available is selected in the Layers list box.

    Layer Manager with available layer selected

  4. Add Layer dropdown menu Click the Add Layer dropdown menu.

  5. Add Local Adjustment Layer icon Select Add Local Adjustment Layer

    A new layer is created below the existing layer.

    Local Adjustment Layer active

    This new layer is selected and weighted to 100%, meaning that you can start tweaking your animation immediately.

World adjustment layers

World adjustment layers offset the animation in world space.

Tip:

World adjustment layers are especially useful when offsetting limb IK targets, e.g. from mocap data.

To create a World Adjustment Layer:

  1. Select any part of the rig.

  2. Go to the Layer Manager rollout in the Animation panel.

  3. Make sure Available is selected in the Layers list box

    Layer Manager with available layer selected

  4. Add Layer dropdown menu Click the Add Layer dropdown menu.

  5. Add World Adjustment Layer icon Select Add World Adjustment Layer.

    A new layer is created below the existing layer.

    World Adjustment Layer active

    This new layer is selected and weighted to 100%, meaning that you can start tweaking your animation immediately.

See also

The Layer Manager

Starting a New Animation

Blending Between Layers

Ranges View

Layer Transform Nodes

Retrieved from "http://cat.wiki.avid.com/index.php/Adjusting_Existing_Animation"


Saving and Loading Poses and Animation

CAT2 has powerful tools for motion data importing, mapping, retargeting and editing. Once created individual animation layers, and even whole layer stacks can be saved for reuse, including on other characters.

Quickly save and load poses and animation from any body part using new quad menus. Right click on a arm, leg, finger, tail, or any bone in CAT, and save out pose or motion data in one click.

Image:Adam Walker Film.jpg

Image courtesy of Adam Walker Film

How motion is scaled to fit your rig

When motion, or pose data is saved from a CATRig, the CATUnits value is saved also. When re-loading, the CATUnits value from the saved file is compared with the CATUnits value of the rig you are loading the data on to. The difference between the 2 CATUnits values is used to scale the data.

For example: If you saved an animation from CATRig A with a CATUnits setting of 2.0, and you load that animation onto CATRig B, with a CATUnits setting of 4.0, then the data will be scaled by a factor of 4.0/2.0, or 2.0. So the data will be made twice as big to fit your new rig.

This means that it is important to use CATUnits correctly. With the example rigs, we try to make sure the CATParent fits underneath the feet of your character. As long as all your rigs have CATParents which are the same relative size with respect to the CATRig, then the data will be scaled correctly.

Tip:

When building rigs of different sizes, it is easier to build one rig, and then resize it using CATUnits before adjusting proportions. This way, you are more likely to get correctly scaled CATUnits values when transferring animation between your rigs.

Retrieved from "http://cat.wiki.avid.com/index.php/Saving_and_Loading_Poses_and_Animation"


Saving and loading Poses and Animation using Right Click Menus

Image:CopyPastePoses.jpg

With CAT, you can very quickly save and load poses and animation from individual body parts to entire rigs. During loading, poses and animation can be mirrored, transformed and swapped.

The copy and paste pose/anim system uses the same clip file saver that has been in CAT since 1.0. The copy and paste system simply provides a better faster, more flexible interface to work with pose and clip files. Especially for body parts. We added the ability to save clip files from any body part, so you can right click on anything including a finger, or facial bone, and save out the animation. Before you could only save out animation on whole bodies, of limbs.

Table of contents

1 CATRigs or Components

2 Interactive Loading

3 Transformations

4 Ghosting

1 Poses

1.1 Save Pose

1.2 Load Pose

1.3 Workflow

1.3.1 Saving and loading a Rig Pose

1.3.2 Saving and loading a Limb Pose

2 Animation

2.1 Save Animation

2.2 Load Animation

CATRigs or Components

Poses can be saved for whole CATRigs, Hubs, arms and legs, hands and feet, fingers, toes, tails, or even sub bone hierarchies. You can always re-use poses or animation from any body part.

Interactive Loading

Our goal is to make pose and animation loading interactive. When a pose or animation file is being loaded, all the load parameters are 'live'. you can change the loaded file, the time of the load, or any of the parameters related to how the pose is loaded. As the artist, you get the opportunity to validate the loaded pose by scrubbing the time-line and view the results of the loaded pose or animation data before committing to the result by pressing the 'OK' button.

Transformations

During loading, the artist has full interactive control over the transformation and mirroring of the pose or animation during load.

Ghosting

To help validate the loaded pose, your CATRig displays a ghost of the currently loaded pose. You need to be able to see what the result is of the loaded file as you scrub the timeline to a different time.

Poses

Save Pose

Image:CopyPastePoses_SavePoseDialog.jpg

The Save Pose dialog is a window that simply defines a file name and path. When using the copy and paste pose system, CAT saves pose files. The filenames and locations are automatically generated for you, but you can change these of course. The name of the pose is generated from the name of the body part you are saving from and the frame that you saved the file.

File Name Edit box: The name of the pose file that will be saved.

b button: Browse for the path of the pose file.

Save While Rig: This option it only available when saving poses from hubs. When turned on, the saved pose will be saved for the entire rig rather than just the hub.

Load Pose

Image:CopyPastePoses_LoadPoseDialog.jpg

As with all the dialogs in this feature, the 'Load Pose' dialogue is non-modal. This means that you can rotate the viewport, scrub the time slider and validate your results as you edit the parameters of the loaded pose. The only thing you are not allowed to do it de-select your bone. If you deselect the currently selected CAT node, the load operation will be canceled.

File Name Edit box: The name of the pose file that will be loaded.

> Button: Open browse poses view.

Load Time: The time that the pose will be loaded. You can edit this value interactively to change the time that the animation is loaded.

Mirror: Toggle whether the loaded pose is mirrored on load.

Note:

This paramter is not available on Limb, palm, or digit pose dialogs.

Load Whole Rig: Toggle whether you are loading a rig, or body part pose.

Note:

This paramter is not available on hub pose dialogs.

Transform Type-in: This give you the opportunity to define the transformation that is being applied to the saved pose. Type in specific values for the transformation of this pose file from its original location. You can, for example, ensure that the poses is loaded in its exact original location for creating looped motions, or with a very specific translation and rotation offset.

Cancel: Cancel the load operation and close the window.

OK:

Note:

If you deselect the currently selected CATBone, the load is cancelled

Workflow

Saving and loading a Rig Pose

Image:CopyPastePoses_BodyPoses1.jpg

To save whole rig pose, you need to select one of the hubs of your CATRigs. This could be a pelvis, ribcage or head object. Right click on the Hub object, or its gizmo, and select 'Save Pose' from the bottom left quad menu.

Image:CopyPastePoses_BodyPoses2.jpg

Check the 'Save Whole Rig' checkbox. You may wish to change the name of the saved pose file.

Image:CopyPastePoses_BodyPoses4.jpg

Right click on a hub of the CATRig onto witch you wish to reload the pose and select 'Load Pose'. The Pose loader will automatically load the most recent pose file that was saved. You can of course select a different file by pressing the '>' button next to the File name edit box.

A ghost is displayed for the ghost at the time is it being loaded. You can change the time or any of the transformation options for the loaded file with the load pose dialog open.

When you are happy with the results of the load, you should press Ok to accept the the load.

Saving and loading a Limb Pose

Animation

Saving and loading animation works the same as saving and loading poses.

Save Animation

Image:CopyPasteAnim SaveAnimDialog.jpg When using the copy and paste anim system, CAT saves clip files. The filenames and locations are automatically generated for you, but you can change these of course. The name of the pose is generated from the name of the body part you are saving from and the frame that you saved the file.

File Name Edit box: The name of the animation file that will be saved.

b button: Browse for the path of the pose file.

Save While Rig: This option it only available when saving poses from hubs. When turned on, the saved pose will be saved for the entire rig rather than just the hub.

Start Time: The start of the time range for the file to be saved for.

End Time: The end of the time range for the file to be saved for.

Load Animation

Image:CopyPasteAnim LoadAnimDialog.jpg

Image:CopyPasteAnim LoadAnimDialog big.jpg

Retrieved from "http://cat.wiki.avid.com/index.php/Saving_and_loading_Poses_and_Animation_using_Right_Click_Menus"


Introduction to motion data saving and loading

CAT2 has powerful tools for motion data importing, mapping, retargeting and editing. Once created individual animation layers, and even whole layer stacks can be saved for reuse, including on other characters.

Motion data is loaded using CAT's clip manager. You can load in HTR, BVH, FBX and BIP files, as well as CAT CLP files. Animation is saved as CLP files. This can be done on a character wide basis, or limb by limb, as required.

Character poses are saved and loaded using the pose manager.

Image courtesy of Adam Walker Film

See also:

Retrieved from "CAT 2.4 CHM file"


Clip/Pose Manager

The Clip/Pose Manager is held in the CATParent and is found in the Animation Panel. The Clip and Pose buttons switch between the Clip Manager and the Pose Manager.

Clip Manager rollout

The Clip Manager

The Pose Manager

Retrieved from "http://cat.wiki.avid.com/index.php/Clip/Pose_Manager"


The Clip Manager

Clip Manager rollout

The Clip/Pose Manager is held in the CATParent and is found in the Animation Panel.

The Clip Manager allows you to save up the layers in the Layer Manager (excluding CATMotion) for later use, even on other rigs.

Pose button When the Pose button is active, the Clip Manager doubles as the Pose Manager.

Data is stored in CAT’s own format, called a CLP file. A CLP file is saved as a text file.

When a clip is saved, all the current animation controllers and their parameters are saved. This means that as the Clip is loaded in, the Clip is reconstructed so that it is exactly the same as when it was saved out.

If an element’s controller is procedural, such as a LookAt Constraint or Scripts, the controller will be loaded but its settings (e.g., the LookAt target object) will not be loaded. In this case you would have to manually reassign the LookAt target.

In addition to CLP files, the Clip Manager will also load BVH, HTR, FBX and BIP motion data formats.

To see the Clip Manager rollout, select the CATParent and go to the Animation panel.

Save button Hit Save Clip to save a single layer, or selection of layers as a clip.

To load a clip or pose directly from the list box double click on the item.

Load button Click the Load button to browse for a clip.

Delete button Click the Delete button to delete the selected CLP file from the hard drive.

To save a clip:

  1. Save button Click Save to save out a clip.

    Save CAT Clip dialogue box

    The Save CAT Clip dialogue box appears (above).

  2. Edit the Time Range Start and End values to enter the start and end times of the animation that will be saved out, save out the entire time range, as required.

  3. Use Layer Range to enter which to layers you which to save. If you wish to save out the whole stack just leave Save Entire Layer Stack checked.

  4. Hit the Save button to save out your selection.

To load a clip:

  1. Load button Hit the Load button or double click on a preset in the list box.

    Clip Options dialogue box

    The Clip Options dialogue box appears.

    Start time: Sets the time that the clip will start from. In the dialogue above frame zero of the clip will be frame 25. The time defaults to the frame that you load the clip at.

    Scale Data: When this is checked the size of the original data will be resized to the CATUnits Scale of your current rig.

    Transform data to current position: When checked the animation is offset to start at the current position of the rig.

    Mirror: When this is checked the animation data will be mirrored across one of the following coordinate planes as selected by the appropriate radio button:

    • Character Symmetry Plane: The character is mirrored left to right across itself.

    • World Y Plane: The character is mirrored across World YZ.

    • World X Plane: The character is mirrored across World XZ.

  2. When you are ready, load in the file with the Load button.

See Also

The Layer Manager

The Pose Manager

Retrieved from "http://cat.wiki.avid.com/index.php/The_Clip_Manager"


The Pose Manager

Pose M<anager rollout

The Pose Manager is held in the CATParent and is found in Clip Manager rollout in the Animation Panel.

The Pose Manager allows you to save out the current rotations of the rig to a file.

Clip button When the Clip button is active the Pose Manager doubles as the Clip Manager.

Data is stored in CAT’s own format, called a PSE file. A PSE file is saved as a text file.

To see the Clip Manager rollout, select the CATParent and go to the Animation panel.

Save button Hit Save to save a the rig's current rotations out as a pose.

Load button Click the Load button to browse for a pose.

Delete button Hit delete to delete the selected PSE file from the hard drive.

To save a pose:

  1. Select the layer you wish to save.

  2. Go to the frame you wish to store.

  3. Save button Click Save Pose.

    A keyframe for every bone in the current layer is stored.

To save a pose that is a combination of all the layers:

  1. Create a new Absolute Layer at the top of the stack and give it a weight of zero.

  2. Go to the frame you wish to save the pose on.

  3. Create Keyframe button Click the Create Keyframe button on the Layer Manager rollout.

    This creates a pose on the new layer that exactly captures the current pose.

  4. Save button Click Save Pose.

To load a Pose:

  1. Select\create the layer you wish to load into.

  2. Go to the frame you wish to load the pose onto.

  3. Load button Select the Load button or double click on the pose name in the Pose Manager list box.

    Clip Options dialogue box

    The Clip Options dialogue box will appear.

    Scale Date: When this is checked the size of the original data will be resized to the CATUnit Scale of your current rig.

    Transform data to current position: When checked the animation is offset to start at the current position of the rig.

    Mirror: When this is checked the animation data will be mirrored across one of the following coordinate planes as selected by the appropriate radio button:

    • Character Symmetry Plane: The character is mirrored left to right across itself.

    • World Y Plane: The character is mirrored across World YZ.

    • World X Plane: The character is mirrored across World XZ.

  4. When you are ready, load in the file with the Load button.

    The pose will load in on the current frame.

See Also

The Layer Manager

The Clip Manager

Retrieved from "http://cat.wiki.avid.com/index.php/The_Pose_Manager"


Working with Limb Clips and Poses

If you want to copy and paste limb clips and poses while you are animating it is much faster to do it through the Limb Clips and Poses menu on the limb than to use the Clip Manager used to pose the whole rig.

Limb Animation rollout

Limb poses are saved and loaded in the Limb Animation rollout which is found in the Animation panel, usually directly under the Layer Manager, when a limb is selected.

To save a limb pose:

  1. Pose your limb as required.

  2. Go to the Animation panel.

  3. Hit the Save Limb Pose button.

  4. Enter the Limb Pose Preset name as normal.

To load a limb pose:

  1. Select the limb you wish to load onto.

  2. Go to the Animation panel.

  3. Make sure you are on the correct animation layer!

  4. Click the Load Preset button.

The limb is posed directly into the loaded pose.

Tip:

If you are loading onto an opposing limb the pose is mirrored automatically.

Retrieved from "CAT 2.4 Manual"


Editing Keyframes in Track View

Your animation keys are stored in Track View as with any other 3ds Max animation. To access the keys for an element in a CATRig simply navigate to the element in Track View as normal.

Below the element’s Transform branch there is an extra branch called Layer Transform. Below this, each of the existing layers are visible, each with their own, individual transform controllers.

Image:Track View.jpg

The animation curves on GameCharRibcage; Backflip [layer]

Tip:

Using the Selected Objects filter saves a lot of scrolling!

Tip:

By default, all rotations are driven by a standard EulerXYZ rotation controller. This controller, although easy to work with, can cause problems such as gimbal issues. Biped, for example uses TCB rotation interpolation which avoids this problem. To use quaternion rotations, you can assign a TCB controller instead of the EulerXYZ controller.

Retrieved from "http://cat.wiki.avid.com/index.php/Editing_Keyframes_in_Track_View"


CATMotion

CATMotion is CAT’s procedural motioncycle generation system. Using CATMotion you can create motioncycles that adapt to the velocity and direction of the rig without sliding footsteps even while moving over an uneven surface.

For motioncycle creation CATMotion has a Walk On Spot mode. Moving the rig around the scene is achieved by linking the CATRig to a PathNode (typically a dummy or point object) which is animated as normal in 3ds Max. This could include assigning a 3ds Max Path Constraint or linking the dummy to a crowd system.

CATMotion settings can be saved as presets, which can then be applied to any rig with the same configuration. Multiple presets can be loaded at one time. Blending from one to another is achieved by animating preset weights. All blends take place without sliding footsteps.

CATMotion works by breaking the motion of the rig down into its component parts and giving the user powerful, parametric controls over each of the components. All parameters can be animated and the animation parameters assigned standard 3ds Max animation controllers, from Bezier Floats to Float Expressions.

Using CATMotion you can create convincing motioncycles in hours that would be hard to achieve in days using conventional animation techniques.

Image:CobaltVFX2.jpg

Image courtesy of Cobalt VFX

CATMotion

CATWindow

CATMotion Controls

The CATMotion hierarchy reflects the build of your rig. CAT has 5 fundamental rig elements (Leg, Arm, Spine, Tail, Extra Bone) that define the control you will have in CATMotion. CATMotion will generate footprints only for the limbs that are defined as legs. Arms are not able to get footprints in CATMotion, though it would make sense in some cases, for example if you want to animate a gorilla that is walking with 2 legs and running with 4. So in general it is important to think about the motions of your character thoroughly before you build the rig in order to have all the controls you need when animating.

How CATMotion Controllers Work

Using Retargeting and CATMotion

Animating CATMotion Parameters

Overview of CATMotion Controllers

Limb Controllers

Ankle Controllers

FootPlatform Controllers

Arm Controllers

Collarbone Controllers

Palm Controllers

Tail Controllers

Tips and Tricks for working with CATMotion

Image:CATMotion - Overview.jpg

CATMotion Overview (17m 32s; 57.3 MB) (http://www.catoolkit.com/downloads/CATVideoTute_CATMotion_Overview.wmv)

Note:

You will need the TSCC Codec from http://www.techsmith.com/download/codecs.asp to watch the video.

Retrieved from "http://cat.wiki.avid.com/index.php/CATMotion"


CATWindow

Introducing the CATWindow

The CATWindow holds all of the controls for CATMotion.

To open up the CATWindow:

The CATWindow opens up in the viewport. Once open the CATMotion settings can edited at any time without having to go back and select the CATRig. This is great advantage when editing multiple rigs.

The left hand panel holds the CATRig Hierarchy. The CATRig Hierarchy holds all the CATMotion controllers and mirrors the structure of the rig. The hierarchy shown is dynamically generated to represent the CATRig.

The top three items in the list exist in every CATRig. These include the CATMotion Preset Manager, Globals and LimbPhases. The remaining hierarchy is organized by HubGroup.

CATMotion works by first breaking up the rig into its elements (The CATRig Hierarchy) and then assigning each element a series of controllers; each responsible for one aspect of the motion of that element.

The motion for each aspect of the motion is given its own spline control. The combination of so many controllers allows for infinite possibility and is highly intuitive.

Settings for each part of the hierarchy are shown in the right hand panel.

A CATMotion Preset is the saved settings for all the controllers in the CATHierarchy in the active CATMotion layer, at the time the preset is saved.

See also:

How CATMotion Controllers Work

Retrieved from "http://cat.wiki.avid.com/index.php/CATWindow"


CATMotion Presets

Image:CATWindow Presets.jpg

The CATWindow showing CATMotion Presets

CATMotion presets hold the settings for all the CATMotion controllers for a particular motioncycle. This data is held in a text file.

CATMotion presets can only be successfully loaded onto rigs with any configuration, but not necessarily with great results. Loading presets for 4 legged creatures onto 2 legged creatures will likely give undesirable results. Good preset naming conventions will be important.

As with the Layer Manager the layer at the top of the stack overrides those underneath it. Each layer has an animatable weight to allow blending between presets.

Available Presets: This list box shows the CATRig presets for the selected folder. The desired folder can be navigated to with the symbol at the top of the list box.

Current Layers: This list box shows the currently loaded layers/presets of your CATMotion layer. If you have multiple layers in the Current Layers list box, you can view and edit a layer/preset by clicking on it, so the curves for that layer/preset will be active in the CATMotion hierarchy, ready for editing.

Note:

The advantage of having multiple layers in the Current Layers listbox within a single CATMotion layer is that you can blend seamlessly between different walk cycles while still controlling the hole walk sequence with a single set of footprints. This means you have non-sliding footsteps even while blending between different walk cycles (for example walk/run/sneak). If you would use multiple CATMotion layers in the Layer Manager instead, blending between the CATMotion layers would result in sliding footsteps and a lot of annoying, unnecessary footprints.

Name: Edit the name of the selected layer.

Weight: Edit the weight of the selected layer.

Image:FileBrowse.jpg Click to browse for a preset.

Image:FileSave.jpg Save the selected CATMotion layer’s settings as a new preset.

Image:FileNew.jpg Create a new default CATMotion layer to edit.

Image:Remove.jpg Delete the selected layer.

Image:TrackView.jpg Edit CATMotion Layer Weights in Track View.

This is used to edit the animation of preset weights, i.e. blending between presets.

To load a CATMotion preset:

Double click on the CATMotion Preset you wish to load.

Image:CATWindow Presets LoadNewLayerExistingLayer.jpg

The dialogue box (above) will appear.

Choose whether to create a new layer or to replace the existing layer with the new one.

The preset name will appear in the Current Layers list box. It will appear selected, with a weight of 100%.

The preset is now loaded and in effect.

To remove a CATMotion layer:

  1. Select the layer.

  2. Image:Remove.jpg Click Remove Layer.

To save a CATMotion preset:

  1. Select the layer you wish to save.

  2. Click Save Preset.

  3. Navigate to the desired folder.

  4. Enter your new preset name.

  5. Click Save.

To blend between CATMotion presets:

Animate the Weight value for the selected layer.

Tip:

To create/edit weights animation click the Weights View button on the CATMotion Presets panel.

The rest of the CATWindow is dedicated to editing the selected layer, whether it is a loaded preset or a new, default layer.

Note:

Make sure you have the right Preset Layer selected!

Retrieved from "http://cat.wiki.avid.com/index.php/CATMotion_Presets"


Globals

Image:CATWindow Globals.jpg

As the name suggests, Globals holds the master settings for the selected CATMotion layer.

Table of contents

1 CATMotion Range

2 Stride Parameters

3 WalkModes

4 Character Motion

CATMotion Range

Start: This is the frame that the CATMotion system will use to start calculating its motion and generating footprints.

Note:

The Start frame defines when CATMotion will start calculating all the curves. That means if you set your Start frame to 0 and a key of a curve in CATMotion is on Time 0, the Max timeline will represent this key at frame 0, too. So setting Start frame to 0 makes it easier to edit a walk cycle or creating a new walk cycle from scratch. Also, if you have two characters walking in a scene with identical walk cycles, you can quickly offset the walk sequence for one of the characters by changing the Start Frame in CATMotion slightly, so both characters are not walking completely synchronal.

End: This is the frame that the CATMotion system will use to end the calculation and generating footprints.

Stride Parameters

Max Step Time: The maximum time a step can take, measured in frames.

Max Stride Length: The maximum distance a stride can make, measured in CATUnits.

Velocity: This value displays the current velocity of the character based on the Stride Length and the Max Step Time. If you are using a Path Node, the velocity value displays the actual velocity that the character is moving at.

As the PathNode speeds up and slows down the rig will automatically take longer or shorter steps. Your character will never take steps longer than the Max Stride Length value, and ill never take steps that take more than the number of frames specified by Max Step Time.

Direction: When in Walk on Spot Mode, or Walk on Line mode, this value defines the direction that the character is moving. It does not change the direction that the character is facing. It is useful for prototyping cycles that are walking sideways or backwards. You can specify a value of 90 degrees and this will mean that the character moves off sideways. A value of 180 means that the character walks backwards. If you are defining a cycle for a character walking backwards, you should start by setting this value to 180, and then you can see what your character will look like when walking backwards. It is easy to see what is wrong with your cycle, and you can start fixing these issues.

Gradient: When in Walk on Spot Mode, or Walk on Line mode, this value defines the gradient of the imaginary slope that your character is walking up. It does not change the direction that the character is facing.

WalkModes

Walk On Spot: In this mode, the character will walk without moving anywhere. This mode is great for looking at the way your character feels when viewed walking.

Walk On Line: In this mode, the character will walk off into the distance in the direction specified by the Direction and Gradient values.

Tip:

If Walk On Spot or Walk on Line mode is selected the rig will always take steps that match the Max Stride Length and Max Step Time.

Walk on Path Node: When Walk on Path node is used, the character will follow any object in the scene and use it to drive the animation of the rig. You need to specify a path node before the Walk on Path node option is available. Click the PathNode button to select an object for the rig to follow when not in Walk On Spot mode.

Tip:

Any object can be used as a path node for your character. A Point helper object makes a great PathNode. You can animation your path node using any method you chose. You can simply keyframe it, or you can assign a path constraint. In fact you can drive your path node using scripts or you can use delegates

Character Motion

Preserve Character Shape: This slider controls how the rig aligns itself to the motion of the PathNode, in other words along its direction. This is really only applicable when the rig has a horizontal spine, such as a quadruped.

With Preserve Character Shape to 0.0 the spine will keep to the trajectory of the PathNode. When going around tight corners this can lead to undesirable results (see below).

With Preserve Character Shape set to 1.0 the spine with hold its shape (see below).

You can animate this value, which can often be useful.

Retargeting: This slider blends legged motion from IK to KA Lifting.

Retrieved from "http://cat.wiki.avid.com/index.php/Globals"


Limb Phases

Image:CATWindow LimbPhases.jpg

Footprints

Footprints are helper objects created to show/edit individual foot placement. As you edit the footprints the pelvis of the rig will automatically reposition itself.

Note:

Footprints can be animated! You can keyframe the location of footprints to create actions such as a character slipping as they run around a corner. You can also bind footprints to space warps, or use the attachment constraint to make a character walk over an animated surface.

Tip:

How much the edits on a footprint effect the location of a hub is relative to the number of legs on the hub. E.g. if a hub has two legs the hub will position itself halfway between the hub's footprints. If a hub has four legs the hub will move a quarter of the distance towards the footprint.

Step Masks: When FootStepMasks is activated the rig will automatically come to a stop when footprints are layered on top of each other, i.e. the PathNode has come to a stop.

Create: Click to show footprints in order to view/edit them.

Delete: Removes the footprints. The footprint edits are remembered by the character, however the foot print animation is lost.

Reset: Returns footprints to their original, unedited positions.

Pick Ground: Automatically aligns created footprints to a ground surface.

Note:

If Auto Key is turned on, clicking "Pick Ground" will key the footprints. So you can fit the footprints to an animated surface by clicking "Pick Ground" on each 4th or 5th frame. This is a more intuitive way to constrain your footprints to an animated surface than using an attachment controller and constrain each footstep manually, because the Path Node and changes to Global settings are respected.

Selected: When this is selected only selected footprints will be affected by 'Reset' and 'Pick Ground'.

All: When All is selected all footprints will be affected by 'Reset' and 'Pick Ground'.

Limb Phase Sliders

Limb phases could also be referred to as limb cadence. It basically is the timing of the motion of the limbs.

One slider is created for each of the limbs on your character. Each arm and leg is driven by a phase offset. The phase offset defines the overall offset of the motion of that limb relative to the overall motion of the body. If two different sliders are at the same value, it means that those to limbs will move at the same time. If the sliders are exactly 1/2 a slider length apart in value, then the limbs will be exactly out of phase. The legs on a biped should be exactly out of phase so that each leg is taking steps when the other leg is planted on the ground.

Note:

The Name that is displayed to the left of the slider is the limb name that you can edit in the Modify panel when a limb bone is selected.. See Using CAT's Naming System

Retrieved from "http://cat.wiki.avid.com/index.php/Limb_Phases"


LimbPhases

The LimbPhases window dynamically creates a phase slider for each limb. Editing the phases enables you to quickly and intuitively adjust the motioncycle.

Editing the phases alone can set the basis for a walk, jump, canter or gallop.

As with all parameters in CATMotion the limb phases can be animated.

Tip:

Edward Muybridge wrote excellent analysis of the order of foot placement for various creatures over a century ago. There are several books based on his works available.

See also

Editing the LimbPhases

Retrieved from "CAT 1.4 manual (chm)"


Editing the LimbPhases

LimbPhases are the most influential aspect of creating the walkcycle. The limb phases dictate the timing for the rest of the system. The nod of the head is directly tied to the swing of the arm, and the roll of the pelvis is calculated using the timing of the leg's footsteps.

It is very important when editing limb phases to keep in mind how the phases will blend to other motioncycles. Ideally all your motioncycles should have similar limb phases to avoid unpleasant jumps in the motion as the blend occurs.

For example when creating your depressed walk you could quite easily change the limb phases around so that LLeg0 has a phase setting of 0.25, and Rleg1 = -0.25. This would work well until you tried to blend to the existing HumanWalk preset. The Leg phases would have to cross over to get from one to the other, and cause a big skip in the middle of the blend.

Keeping this in mind always edit your limb phases as little as possible and when bigger changes are required, such as moving from a horse walk to a gallop, plan the changes so that the phases do not cross over. For more information please refer to Animating Limb Phases in your CAT User Reference.

In the present case you wish to create a floppy walk, so you will edit the arm phases so that they lag behind the legs.

Edit the arm phases:

  1. Drag the arm sliders slightly to the left so that they are behind the movement of the legs.

See also

Editing the Limbs

Retrieved from "CAT 1.4 manual (chm)"


How CATMotion Controllers Work

The output of every CATMotion controller is a combination of different curves. In the case of FootPlatform>Lift the end result is a combination of MAX Step Time, MAX Stride Length, the velocity of the PathNode and the values you assign to all of the individual controllers for the FootPlatform.

The curve you see in the FootPlatform>Lift box is useful for helping to create the result you want in the animation for that controller, but you can also see the actual result in Track View.

To view the output curves for an element (in this case a FootPlatform):

  1. Select the element in the viewport.

  2. Open the Curve Editor (make sure the Show Only Selected Objects filter is checked).

  3. Open up the tree for the selected object and expand the Layer Transform branch.

    Image:CATMotionControllers1.jpg

  4. Expand the LayerTransform branch. The information for the selected element is held in the CATMotionPos controller.

    Image:CATMotionControllers2.jpg

  5. Now click on CATMotionPos.

    Image:CATMotionControllers3.jpg

Here you can see the graph that represents the trajectory for the selected FootPlatform, as compared to the graph in the FootPlatform controller (below).

Retrieved from "http://cat.wiki.avid.com/index.php/How_CATMotion_Controllers_Work"


Using Retargeting and CATMotion

CATMotion also integrates CAT's retargeting system. It has two big advantages over normal IK. Firstly, it removes the problem of snapping at the knee joint, caused by over extension of the IK chain. Secondly, because the leg pushes the pelvis up, the character automatically has weight.

Because it enables completely straight legs, we have found that with retargeting it is possible to achieve walks that would be either very difficult of even impossible using IK, with ease.

in CATMotion, retargeting is controlled by a combination of two controllers, KneeAngle and LegWeight.

The walkcycle is divided up into four knee angles. Control over the knee angles is accessed in the KneeAngle controller, under Legs in the CATWindow.

For clarity we have called the four knee angles: Lift, MidLift, Plant and MidPlant.

Lift: is the angle of the knee as the foot is about to leave the ground.

MidLift: is the angle of the knee in the middle of its path through the air.

Plant: is the angle of the leg as the foot is placed back on the ground.

MidPlant: is the angle of the knee in between Plant and Lift.

The other controller important to Retargeting is called LegWeight. It can be found with KneeAngle under Legs in the CATWindow.

The LegWeight graph controls the how much the foot platform is being pulled down onto the ground plane. When LegWeight has a value of 0 increasing the knee angle will pull the foot higher into the air. When LegWeight has a value of 1.0 increasing the knee angle will pull the pelvis down.

LegWeight can also be thought of as Leg Priority. The left side of the graph is the Lift Priority and the right side is the Plant Priority. This becomes important when you try to push the angles further than is possible to physically achieve. Then by adjusting the leg weights so that one is set to and the other to zero you can control where the error will be most. Usually the planting leg should get priority.

Error within the system is absorbed in the ankles. If you notice the ankles are tending to go straight up or otherwise behave strangely try adjusting either LegWeight or KneeAngle.

Usually the first thing to try will be to reduce the Maximum Stride Length or increase/decrease various knee angles.

If the movement looks a bit clunky it could be the LegWeight graph needs smoothing out. If the ankles are going too straight as the foot lifts it could be the LegWeight on the lift part of the graph is too long.

Running and Retargeting

While Retargeting is a great solution for walking, it isn’t a great solution for running. At this point it is pretty much impossible to get a useful blend between where the leg weights let go and ‘flight’ takes over.

For now we recommend that you use IK for running and jumping.

See also:

Retargeting

Retrieved from "http://cat.wiki.avid.com/index.php/Using_Retargetting_and_CATMotion"


Animating CATMotion Parameters

Usually it is always best not to animate individual CATMotion parameters, but rather to simply blend between CATMotion layers. This leaves you with far fewer keyframes to manage.

However, it is not for us to limit your possibilities. All parameters in the CATWindow can be animated. Animation keys are created in the same way as any other keyframes in 3ds Max, either by turning on the Auto Key button or in Track View.

In Track View, the CATMotion data is held in is held on the CATParent, in its respective CATMotion layer.

The controllers exactly mirror the hierarchy within the CATWindow. Each controller is visible and each Preset Layer present.

Keyframes can be inserted and edited in exactly the same way as normal in 3ds Max.

Image:CATHierarchy for StandardHuman.jpg

The CATHierarchy for StandardHuman as seen in Track View

Tip:

The easiest way to access the animation parameters for a specific CATMotion controller is to click on the Track View button on the panel for that controller in the CATWindow.

To animate the Pelvis Lift value for the 2nd Knot:

  1. Go to PelvisGroup>Pelvis>Lift in CATWindow.

  2. Image:Track View button.jpg Click on the Track View button.

    Track View will open up to show all of the parameters for the selected controller.

    Image:Animating CATMotion Parameters 1 .jpg

  3. Expand Key2Val.

    Image:Animating CATMotion Parameters 2 .jpg

  4. Insert and edit animation keyframes as required.

    Image:Animating CATMotion Parameters 3 .jpg

Tip:

The beauty of CAT is that you can assign any Float controller you want to any parameter, including, e.g. Float List controllers.

Tip:

Animating offset controllers (OffsetRot and OffsetPos) is one way to add in extra acting to your motion cycle while retaining secondary motion such as Head Lift, etc. Another (and usually better) way to do this is to animate directly in an adjustment layer.

Retrieved from "http://cat.wiki.avid.com/index.php/Animating_CATMotion_Parameters"


Overview of CATMotion Controllers

After Globals and Limb Phases, the rig is broken up hierarchically into the various HubGroups.

Each of these HubGroups and its children are assigned a series of controllers that allow the user to edit its motioncycle. Many of these controllers are repeated in all areas. Some controllers are specific to a particular area.

Image:CATMotion Controllers overview - FootPlatform Lift..jpg

A FootPlatform>Lift controller

All CATMotion cycles are 100 frames long. The animation is then squashed or stretched to the right length with a combination of the Globals controls (Max Step Time and Max Stride Length) and the velocity of the PathNode. This means that the Time values are best thought of as percentages of the motioncycle rather than absolutes. A time of 50 is halfway through the cycle.

The light green in the background represents the time that the feet are on the ground. The dark green represents the time that the feet are in the air.

All controllers except for the OffsetRot and OffsetPos have graphs to show the curve for the motion of the selected controller within the motioncycle.

Use the Image:CATMotion - Previous Key.jpg (Previous) and Image:CATMotion - Next Key.jpg (Next) buttons to click through the knots on the spline. Spline knots can also be selected directly by clicking on them in the window.

As each knot is selected, its Time, Value, Tangent, and tangent Lengths spinners are activated and are ready for editing.

If a variable is grayed out, it is not possible to edit it. We have found that changing some variables gives pretty much guaranteed disastrous results hence the graying out.

Tip:

If you want to compare different graphs hold the SHIFT button down and select the various controllers. The last one you select will be editable.

Image:CATMotion - Copy.jpg Select to copy the settings for the current CATMotion controller.

Image:CATMotion - Copy.jpg Select to paste settings from another CATMotion controller.

Image:CATMotion - Reset.jpg Reset sets the spline back to its default values.

Image:CATMotion - Track View.jpg All parameters are animatable. The Curve Editor button opens the Track View to the relevant area to edit animation keys for that controller.

Image:CATMotion - Zoom Extents.jpg Zoom to extents of curve.

Tip:

The same hierarchy visible in the CATWindow is also visible/editable in Track View by navigating to Objects > (Character Name) > Object > Layers > CATMotion Layer > CATHierarchyroot. Here you can assign standard 3ds Max animation controllers to the various parameters.

Note:

Overall limb phase is controlled in the Limb Phases panel.

Image:CATMotion - Limbs welded .jpg

Image:CATMotion - Limbs unwelded .jpg

Image:CATMotion - Limbs locked .jpg

Limbs Welded

Make unique

Lock limbs

You can see the see the limbs in the Limbs list box. By default it shows LimbsWelded, which means that the settings will be applied to all limbs on one track (as seen in Track View).

Image:CATMotion - Make Unique.jpg Click the Make Unique button to divide the limbs into separate tracks.

Image:CATMotion - Lock Tracks.jpg Turning on the Lock button instances the settings between the different tracks.

Image:CATMotion - different coloured splines.jpg

Image:CATMotion - different coloured legs.jpg

Different colored splines...

...represent the leg colors in the viewport

You will notice that as you change the settings related to the selected limb that the spline in the window is the same color as the selected limb in the viewport.

If all of the above seems a bit confusing, it will become clear as you play with the system. Try setting a rig walking on the spot and simply playing with the parameters as it moves in realtime. You will quickly get a feel for what everything does.

See Also

Limb Controllers

Ankle Controllers

FootPlatform Controllers

Arm Controllers

Collarbone Controllers

Palm Controllers

Tail Controllers

Hub Controllers

Retrieved from "http://cat.wiki.avid.com/index.php/Overview_of_CATMotion_Controllers"


Hub Controllers

LiftOffset

The LiftOffset controller

The LiftOffset controller exists on hub elements. It is used to animate the offset on the Z axis over the cycle. Its purpose is to increase control over hub height, when using IK to help avoid snapping joints on legs while running and jumping.

Retrieved from "CAT 2.4 CHM help file (local)"


Limb Controllers

Table of contents

1 LiftPlantMod

2 KneeAngle

3 LegWeight

4 See Also

LiftPlantMod

Image:CATMotion Controllers - LiftPlantMod .jpg

LiftPlantMod panel

Although it can be found on all limbs, it is only relevant for legs. This graph controls the ratio between the time that the feet are on the ground in relation to the time they are in the air. The only editable value in this window is the slider under the graph.

As the slider is pulled to the left the graph gets narrower, inside the dark green area. This means that the feet are staying on the ground for longer - giving a ‘walking on Jupiter effect’.

If the slider is moved to the right and the graph moves out into the light green area, this means that for some of the cycle the feet will both be in the air at the same time, moving them into a run.

KneeAngle

Image:CATMotion Controllers - KneeAngle .jpg

KneeAngle panel

This graph controller is only found on limbs and is only relevant for legs. It is only active when the Retargeting slider in Globals is set to 1.0.

The graph controls the knee angle throughout the cycle. This is a whole new system of legged motion, unique to CAT. See Retargeting for more.

LegWeight

Image:CATMotion Controllers - LegWeight .jpg

The LegWeight controller

This graph controls the sharing of weight between each foot when using Retargeting.

See Also

Overview of CATMotion Controllers

LimbPhases

Editing the LimbPhases

Retrieved from "http://cat.wiki.avid.com/index.php/Limb_Controllers" + See Also mixed in from "CAT 1.4 manual (chm)"


Ankle Controllers

Table of contents

1 DigitRollAngle

2 DigitSpreadAngle

3 DigitCurlAngle

4 TargetAlign

5 FootBend

6 See Also

DigitRollAngle

Image:CATMotion Controllers - DigitRollAngle .jpg

The DigitRollAngle controller

DigitRollAngle controls the amount of digit roll.

Tip:

Use in conjunction with DigitSpreadAngle.

DigitSpreadAngle

Image:CATMotion Controllers - DigitSpreadAngle .jpg

The DigitSpreadAngle controller

DigitSpreadAngle controls the amount of spread the digits have during the cycle.

Tip:

This one is great for simulating heavy creatures that walk on their toes, like dinosaurs. Have the spread drop off as the foot lifts and animate back on as the foot plants again.

DigitCurlAngle

Image:CATMotion Controllers - DigitCurlAngle .jpg

The DigitCurl controller

The DigitCurl controller controls the amount the digits curl during the cycle.

Tip:

Especially useful for creatures with long claws like lizards or birds.

Tip:

To control the curl values of individual digits, edit the Curl Weight in the setup specifications of a selected digit.

TargetAlign

Image:CATMotion Controllers - TargetAlign .jpg

The TargetAlign controller

TargetAlign controls the position of the pivot point for the ankle. A value of 0.0 places the pivot point at the ball of the foot (the base of the toes). A value of 1.0 places the pivot at the ankle joint.

Tip:

A human will typically have the pivot on the ball of the foot at Lift and at the heel on Plant.

Tip:

A creature that walks on its toes (such as most 4-legged creatures) would have a constant value of 0.0, leaving the pivot point at the ball of the foot.

FootBend

Image:CATMotion Controllers - FootBend .jpg

The FootBend controller

FootBend controls the angle of the ankle.

Tip:

When animating humans, FootBend is not usually required as the ankle lifts naturally anyway (assuming your TargetAlign settings are correct!).

Tip:

This is most useful when working with creatures that walk on their toes.

See Also

Overview of CATMotion Controllers

Retrieved from "http://cat.wiki.avid.com/index.php/Ankle_Controllers"


FootPlatform Controllers

The FootPlatform is the IK target for the feet. Its motion is critical to the motion of the legs.

Table of contents

1 RollPivotPos

2 Roll

3 PitchPivotPos

4 Pitch

5 FootPush

6 Swerve

7 StepShape

8 See Also

RollPivotPos

Image:CATMotion Controllers - RollPivotPos .jpg

The RollPivotPos Controller

A CATRig’s FootPlatform has an animated pivot position to make sure that the foot is always rotating around the desired point. The RollPivotPos controls the position of the pivot across the X axis of the FootPlatform (or from one side to the other).

A value of 1.0 represents the outside of the foot and a value of 0.0 the inside of the foot platform.

Tip:

While this setting is animatable, it is usual to leave this value constant throughout the cycle. A human would normally have the value set to 1.0.

Roll

Image:CATMotion Controllers - Roll .jpg

The Roll controller

The Roll controller controls the rotation of the FootPlatform along its length.

In the image above we can see that the roll is starting before the foot leaves the ground and ends after the foot is on the ground. This would be a usual scenario.

PitchPivotPos

Image:CATMotion Controllers - PitchPivotPos .jpg

The PitchPivotPos controller

CAT’s FootPlatform has an animated pivot position to make sure that the foot is always rotating around the desired point. The PitchPivotPos controls the position of the pivot along the Y axis of the FootPlatform (or along its length).

A value of 0.0 positions the pivot at the heel of the foot platform, and a value of 1.0 positions the pivot at the toe.

Tip:

For a human this setting will typically animate between the toe (1.0) for lift and the heel (0.0) for plant (see image above).

Pitch

Image:CATMotion Controllers - Pitch .jpg

The Pitch controller

As with the standard Pitch controller, FootPlatform Pitch controls the angle of the FootPlatform along its length (Y axis). It is used to control the angle of the foot as it lifts off and slaps down (See below).

Image:FootController Pitch - Lift .jpg

Image:FootController Pitch - Plant .jpg

FootPlatform pitch at lift

...and at Plant.

FootPush

Image:CATMotion Controllers - FootPush jpg.jpg

The FootPush controller

FootPush is a cyclic positional offset along the Y axis that enables you to throw the FootPlatform forward during the walkcycle.

Tip:

Use FootPush for straight legged marches (in combination with KA Lifting) or for running.

Swerve

Image:CATMotion Controllers - Swerve .jpg

The Swerve controller

The Swerve controller is actually the same as the WeightShift controller. It controls the side to side (X axis) positional cycle for the FootPlatform.

StepShape

Image:CATMotion Controllers - StepShape .jpg

The StepShape controller

The StepShape controller controls the velocity of the FootPlatform as it goes through the air. In other words, it controls the ease-in and ease-out of the FootPlatform’s motion.

Tip:

Slower movements will have bigger ease curves. Quick movement such as running will have an almost linear StepShape curve.

See Also

Overview of CATMotion Controllers

Retrieved from "http://cat.wiki.avid.com/index.php/FootPlatform_Controllers"


Arm Controllers

Table of contents

1 CrossSwing

2 Swing

3 Bend

4 See Also

CrossSwing

Image:CATMotion Controllers - CrossSwing .jpg

The CrossSwing controller

CrossSwing controls the angle of the arm out from the body (arm Y axis). It is used in conjunction with Twist to tune the way the arm curves around the body as it swings.

Swing

Image:CATMotion Controllers - Swing .jpg

The Swing controller

Swing controls the rotation of the arm backwards and forwards, parallel to the body.

Bend

Image:CATMotion Controllers - Bend .jpg

The Bend controller

Bend controls how much the arms bends at the elbow.

Tip:

You will probably need to edit both knots to make sure that the elbow is bending correctly. E.g., for a human, knot 1 could have a value of -64 and knot 2 could have a value of 24.

See Also

Overview of CATMotion Controllers

Retrieved from "http://cat.wiki.avid.com/index.php/Arm_Controllers"


Collarbone Controllers

Motion X, Y, Z

Image:CATMotion Controllers - MotionXYZ.jpg

The Motion X, Motion Y and Motion Z controllers on the collarbone all control their respective rotation cycles.

See Also

Overview of CATMotion Controllers

Retrieved from "http://cat.wiki.avid.com/index.php/Collarbone_Controllers"


Palm Controllers

For the most part palms have the same controllers as ankles. The exception is HandFlop.

HandFlopX

Image:CATMotion Controllers - HandFlopX .jpg

The HandFlopX controller

HandFlop X controls the rotation of the Palm along the X axis of the palm.

Tip:

HandFlopX works well for nice secondary motion on cartoon characters.

HandFlopY

Image:CATMotion Controllers - HandFlopY .jpg

The HandFlopY controller

HandFlop Y controls the rotation of the Palm along the Y axis of the palm.

See Also

Overview of CATMotion Controllers

Retrieved from "http://cat.wiki.avid.com/index.php/Palm_Controllers"


Tail Controllers

See Also

Overview of CATMotion Controllers

Retrieved from "http://cat.wiki.avid.com/index.php/Tail_Controllers"


Tail Controllers

The tail has extra CATMotion controls found in the Animation panel when the tail is selected. They include there Tail Phase Bias graph and the Frequency settings.

CATMotion TailPhase and Frequency dialogs (only visible when you've selected the CATMotion layer)

The tail has a special graph that controls how the frequency curves are distributed along the tail, which can be accessed while you have the CATMotion layer selected and in the PRS Parameters clicked on the Rotation button.

Frequency: Controls the length of the waves down the tail as it sways. A setting of 1.0 means the wave will be the length of the tail. The allowed frequency range is 0.1 to 5.

Tip:

For a stiff tail set Frequency to a small number like 0.2.

Retrieved from "CAT 2.4 CHM help file (local)" + My own edits (how to find Frequency)


Importing and Exporting Data

Image:MocapImport.jpg

Motion capture data is loaded into the Layer Manager in much the same way as any other keyframe data. Once the motion capture data is loaded into CAT, all the same powerful keyframe editing tools are available to transform, edit, duplicate, retime the motion data. You are then able to use all the layering tools to edit the motion capture data in a non-destructive way.

CAT currently supports the loading of BVH, HTR, FBX motion capture file formats, as well as importing the motion from Character Studio BIP files.

The process has two stages, importing the motion data into a separate hierarchy in Max, and then mapping the animation data from the hierarchy onto your CATRig using Capture Animation.

Each format has its own importer. Once the data is imported the mapping is all handled by the Capture Animation utility, which automatically maps the data onto your character and allows you to edit the mapping if required.

Once data is imported you can use the Layer Transform Gizmo to easily transform the whole clip/layer and Adjustment layers to enable you to tweak to the animation.

Table of contents

1 Importing Animation Data

1.1 See Also

2 Exporting Data From CAT

3 Motion Capture Resources

Importing Animation Data

Importing HTR Files

Importing BVH Files

Importing FBX Files

Importing BIP Files

Capture Animation

See Also

Mapping Motion from Mocap Point Clouds

Exporting Data From CAT

Exporting to FBX

Retrieved from "http://cat.wiki.avid.com/index.php/Importing_and_Exporting_Data"


Motion Extraction Node

Game developers often need one node to sit at the root of a character's rig. They use this node:

In 3ds Max CAT, this feature is called the Motion Extraction Node, although it is called Root Node in the user interface.

Creating a Motion Capture Node

You can create a motion capture node any time after you have created (or loaded) its CATParent node.

Here, for example, is Alien, one of the CATRigs available with 3ds Max CAT.

Before creating motion capture node

Before creating motion capture node

The blue triangle-and-arrow with represents Alien's CATParent node.

To create a motion capture node:

  1. Select the CATParent node.
  2. Go to the Modify panel
  3. Click Create Root Node.


The blue arrow appears to grow larger:

After creating motion capture node

After creating motion capture node

But that is misleading: hiding the CATParent's arrow is a larger, separate arrow that represents the motion capture node.

If you select the CATparent node, go to the Display panel, and click Hide Selected, you will still see the large arrow representing the motion extraction node.

Or, if you animate the motion extract node so that Alien moves in its world, you will see both the CATParent's arrow and the motion extraction node's arrow.

Retrieved from "http://cat.wiki.softimage.com/index.php/Motion_Extraction_Node"

Utilities

CAT comes with a set of powerful utilities to expand the functionality of CAT:

Capture Animation is a tool for transferring animation from one character or hierarchy to another.

This tool is used for automatically rigging up CATRigs using the Reactor system in Max.

Batch importing tool for importing in multiple files into CAT.

Batch exporting tool for exporting multiple assets to your game engine.

Designed specifically to provide a flexible workflow for bones based facial animation using CAT.

Use Max IK Systems to drive CATBones.

See Also

More utilities for CAT can be found on the CATForums. CATForums Scripting (http://www.catoolkit.com/forum/forum_topics.asp?FID=13)

Retrieved from "http://cat.wiki.avid.com/index.php/Utilities"


Ragdoll

Automatic Ragdoll Setup automatically sets up Ragdoll constraints on CATRigs.

To set up Ragdoll constraints on a CATRig:

  1. Select Constrain with Ragdoll from the CAT drop down in the menu bar.

    Image:RagDoll.jpg

    The dialogue box (above) appears.

  2. Image:Target Rig button.jpg Press the 'Target Rig' button to select the rig you wish to configure in the viewport.

    Press Constrain to automatically create a Reactor layer in the Layer Manager and apply the constraints.

    Image:Ragdoll1.jpg

    Now all the Reactor constraints have been set up for each joint on your character.

    Image:Ragdoll2.jpg

    If the 'Create Animation' button is pressed in the Reactor utility, then the CAT Rig will collapse under the control of the Reactor physics system.

To constrain a body part of the CATRig:

  1. Open the CAT Reactor tool from the CAT menu.

  2. Image:Target Rig button.jpg Pick the character you would like to apply the reactor constraints to.

  3. Image:Only Constrain Selected Objects checkbox.jpg

    Turn on the ‘Only Constrain Selected Objects’ checkbox.

    If you turn this checkbox on, then only CAT bones that are selected in the viewport when then Constrain button is pressed will get ragdoll joint constraints assigned. This is useful for using Reactor to control only a body part such as a arm, leg or tail. The other body parts get animated using the CAT layer system, and are added to the rigid body collection so that the constrained body part will bounce off the unselected CAT Bones.

    Image:Ragdoll3.jpg

  4. Select the body parts in the viewport that you would like to constrain.

    Image:Ragdoll4.jpg

  5. Press the ’Constrain’ button.

    Image:Ragdoll5.jpg

    Now when reactor is solved, only the bones that have been selected are controlled by reactor. The non-constrained bones are added to the rigid bodies list so that the arm will collide with the body.

Tips for working with Reactor

Reactor Layers

When you create a reactor layer, all the limbs on the rig are automatically set into FK in the layer, so that reactor can work properly. It does this while holding the current pose exactly, so you can blend seamlessly from your previous animation.

Image:Add Reactor Layer button.jpg The Add Reactor Layer button adds empty Reactor layers to the Layer Stack to create multiple solutions into.

Tip:

Always solve Reactor with the Update Viewpoints turned on in the Reactor Utility

Image:Update Viewports checkbox on.jpg

This forces Max to completely update the whole scene for every frame of animation, and this helps CAT store the animation correctly. Check the ‘Update Viewpoints’ checkbox before pressing the ‘Create Animation’ button.

Tip:

Turn off the Create List/Layer checkbox in the Reactor Utility

You do not need to use this feature because CAT already has a layer system.

Tip:

Ensure you do not have CAT bones selected in the viewport

In 3ds Max version 7.0, and above, if CAT bones are selected when reactor solves, the animation is distorted. Always de-select everything in the viewpoint before pressing the reactor Solve button.

Adjust the Reactor Col. Tolerance value

Image:Col Tolerance value.jpg

Many scenes have unit scales that are not ideal for Reactor. Often the collision tolerance value is set too large. This causes bones to collide when they appear to be far apart in the viewpoint. If this value it set too large, then you may find that the character moves extremely erratically, and may fly across your scene with apparently no forces being applied to the rigid bodies. Try reducing the Col. Tolerance value and re-solve.

Retrieved from "http://cat.wiki.avid.com/index.php/Ragdoll"


Batch Importer

Image:BatchImporterWindow.jpg

Table of contents

1 Running the Batch Importer

1 Import List View

2 Buttons

3 Working with the Batch Importer

Running the Batch Importer

The 'Batch Import' tool can be found under the CAT menu item in Max. The Batch importer is a tool for brining motion data onto CATRigs. It allows you to import many different files from many different paths onto your rigs in CAT.

Import List View

Imports

The batch importer processes each line in the import list. It imports the files found in the source folder into the target scene.

'Target Scene file

The Max scene file containing the CATRig that you will be importing the data onto.

'Import Folder

the Folder that the motion data will be imported from. The batch importer imports ALL the files of the specified file type into the Target Scene file.

CATRigs

This column will display the name of the CATRig that was found in the Max scene file when the Import was added.

If you have multiple rigs in the scene, then the CATRig column becomes a drop down list box if you click on it. This enables you to select a rig for the data to be imported onto.

CAM File

Specify the Capture Animation Preset file. you Create Capture Animation Preset files using the Capture Animation tool

Scale

the Scale factor that will be applied to the imported data.

Buttons

Add Import

This adds a new row to the Imports list view.

Remove Import

This button becomes enabled when you select an Import row in the Imports list view.

New

Press this button to create a new Batch Import preset. All fields in the Imports list view are cleared.

Save

Press this button to save the current ‘Batch Import’ to a Batch Import Preset file (*.BIM).

Load

Load a Batch Import Preset file (*.BIM) into the Batch Importer.

Import

Press this button to perform a full Import.

Working with the Batch Importer

The Batch Importer is simply a batch processor for the Capture Animation tool. The first thing you will need to do is manually import one of your files onto your target CATRig. During this process you should save a Capture Animation Mapping file (*.cam), and also determine the correct scale value for your data to work correctly on your CATRig.

Next, you can open up the Batch Importer and add a new import.

Retrieved from "http://cat.wiki.avid.com/index.php/Batch_Importer"


Batch Exporter

Image:BatchExporter.jpg

Table of contents

1 Running the Batch Exporter

1 Export List View

2 Buttons

3 Tutorial

4 Customising the Batch Exporter

Running the Batch Exporter

The 'Batch Export' tool can be found under the CAT menu item in Max.

Export List View

Exports

An 'Export', is one export resulting in an exported asset file. Using CAT, you may export many assets from one Max file using different combinations of time ranges and enabled animation layers.

Each row in the List View of the Batch Exporter is an ‘Export’

The exporter puts any rows in bold that are currently loaded in Max. The exporter only allows you to edit scene settings like Max Layers and CATLayers if the file is actually loaded.

During export, the exporter highlights the row that is currently being processed.

Source Max Scene File Path and Newest file

Instead of specifying a source Max file, you specify a search path. The Batch Exporter looks in the specified folder for the 'Last Modified' Max scene file. On this way if you have a folder containing "Walk.max, Walk01.max, Walk02.Max". The exporter would find "Walk02.max" assuming this was the most recently edited file. This means that there is a restriction that you can only have one source file in each folder. You cannot have a “Walk.max”, and a “Run.max” in the same folder.

If you want to preview the export settings, just double-click on an export. Warning: If the export you double clicked on is not loaded, then that scene file will be loaded into max.

The Exporter exports from top to bottom. You can rearrange the exports simply by dragging and dropping the exports in the List view.

It is advisable to order your exports so that Max loads in new files as seldom as possible.

CATRigs

This column will display the name of the CATRig that was found in the Max scene file when the export was added.

If you have multiple rigs in the scene, then the CATRig column becomes a drop down list box if you click on it. This enables you to select a rig and specify which layers are required for that export.

CATRig Layers

This Column enables you to specify the layers that you wish to have enabled during this export.

Note:

If no layers are selected, then during export, the rig will be put into setup mode. This is useful if you are required to export a export a bind pose.

Max Scene Layers

This list enables you to specify the Max Scene layer that you with to have visible during this export. If you have specific objects that you only want to be exported for specific exports, then put these objects onto a separate max layer and turn these layers on for the desired exports.

Start Time and End Time

These two columns define the animation range that

Output file

Specify the name of the exported file.

The window and columns in the List view are fully resizable and all settings are saved and loaded each time you run the exporter.

Buttons

Add Export

This adds a new row to the exports list view.

When you add a new Export, the settings default to those currently found in the Max scene. In many cases, like when an artist has used 1 Max scene file for each export, this will be correct, assuming that the file was ready for export when the Export was added to the Batch Exporter.

Remove Export

This button becomes enabled when you select an export row in the exports list view.

New

Press this button to create a new Batch export preset. All fields in the Exports list view are cleared.

Save

Press this button to save the current ‘Batch Export’ to a Batch Export Preset file (*.BXP).

Load

Load a Batch Export Preset file (*.BXP) into the Batch Exporter.

Test Export

This Button performs a ‘dry run’ of the current export setting without actually exporting any data. This is useful for debugging your export settings. Any errors encountered are logged and displayed at the end of the test.

Export

Press this button to perform a full export including writing out exported data to the hard drive.

Tutorial

  1. Run the ‘Batch Exporter’ tool found under the CAT menu in Max.

  2. Load a Max scene that you would like to export data from.

    • If the scene you have loaded contains a CATRig, then the “Add Export” button becomes enabled.

  3. Press the ‘Add Export’ button.

    • The Batch Exporter checks that you have opened the newest file in the given directory. If not, a warning is issued.

    • The new export defaults its settings to the current settings in the Max Scene file. The currently enabled layers on the CATRig are used, and the currently visible Max Layers in the Max Layer editor are used.

  4. Edit the Export settings.

    • Right-click on the ‘CATRig Layers’ column to edit the list of enabled layers for this export.

    • Right click on the ‘Scene Objects’ column to edit the visible Max objects for this export.

    • Edit the export time ranges.

    • Specify an Output file by either ‘Right-Clicking’ to display a ‘browse’ dialogue box, or ‘Left-Clicking’ to manually type in an export path.

  5. Repeat steps 3 to 5 to add more exports from the same Max Scene file.

  6. Load another Max scene file.

  7. Repeat steps 3 to 5 to add more exports from this Max Scene file.

  8. Press the ‘Save’ button to save a ‘CAT Batch Export Preset’(*.bxp) file.

Customising the Batch Exporter

Note:

This is a framework for a batch exporter. You will need to customise it to fit your own specific needs.

The Batch Exporter is a script file located in the Maxfolder>/scripts/CATScripts folder. This script was written to help studios set up an efficient pipeline for CAT without needing to learn about scripting in CAT.

Open up the script file and look for the line containing... "exportFile exportfilePath #noPrompt" and replace it with whatever you require. After this, the exporter is called with appropriate parameters. You may need to modify this part of the code to suit your own exporter. Some exporters, for example, are actually utilities. Like the ActorX exporter for the unreal engine.

PrepareExport

 fn PrepareExport li writelog:false =

This function gets the max scene ready for export. It hides and unhides the appropriate Max scene layers. It enables and disables the appropriate layers and sets the animation time range.

DoExport

 fn DoExport DryRun:false =

This function iterates over all the exports, prepares them using the PrepareExport function, and then runs the appropriate exporter.

Retrieved from "http://cat.wiki.avid.com/index.php/Batch_Exporter"


Pose Mixer

Image:PoseMixerWindow.jpg

The Pose Mixer allows you to save poses and then reload them back onto your CATRig. Poses can be blended while being loaded.

This tool was designed specifically for facial animation allowing users to save, mix and and reuse poses in the same way you work with facial shape morphing.

Table of contents

1 Watch the Video Tutorial

2 Configuring your Rig

3 Working with the Pose Mixer Dialog

4 Creating Poses

4.1 Left Middle Right Pose Files

5 Loading Poses

5.1 Relative and Absolute Loading

5.1.1 Subtracting Poses

5.1.2 Absolute Pose Loading

6 Animating Using the Pose Mixer

Watch the Video Tutorial

Image:MosMixerVid.jpg

Pose Mixer Video Download and watch the video tutorial.

This video covers working with the Pose Mixer. Setting up rigs, saving poses and then reloading them onto your rig.

Configuring your Rig

When you are setting up your rig, it is important to understand a few things.

When you 'copy', and then 'paste mirrored' onto a bone, CAT now remembers the relationship between these bones. It remembers that these 2 bones are symmetrical. This means that as you copy and paste between the opposite sides of your body, the CATRig is remembering the relationship between bones on the left side of the face and body, and the right side, and building up a symmetry map. Rigs that were created with versions of CAT earlier than 2.5 will need to be updated. You will need to copy and paste each bone from the left side to the right side of the body.

For every bone on the left, you should copy and then paste mirrored onto the right, thereby ensuring that the rig contains a complete map of left bones and right bones and how to perform mirroring operations.

Working with the Pose Mixer Dialog

Press the 'Poses Folder' button to choose a folder location where you will be storing all you poses.

Click on the 'CATRig' button to choose the CATRig that you will be working with.

Creating Poses

Poses are created by selecting bones in the face and pressing the save button. You should only select the bones that are used in this pose. For example, if you are saving a pose for the mouth, then select the bones that are used to shape the mouth and press the save button.

Left Middle Right Pose Files

When you save a pose file, you specify whether this pose is for the Left side of the body/face, the right side, or middle. This information is used when loading the file back in. So if you Save a 'Left' pose and then reload it using the 'Right' spinner, then the pose is mirrored onto the right side of the body when loading.

You can edit the bones around the left eye to close the eye. Then select all the left eye bones and press 'Save'. In the Left Middle Right dialog select 'Left'. Now you can load this pose on to the left or the right eye by simply spinning the 'left' or the 'right' spinners. You only need 1 pose for both sides of the body.

Tip:

When saving poses, you may think that you should save a 'Left' pose for the characters left. But I have found it easier to work if I save all the poses in screen space. So, when working on faces, you are often facing the character. So I prefer to save 'Left' poses for parts of the face that are on the left side of the screen. This makes it simpler when loading because you only need to think about which side of the screen you are loading onto, rather than left and right from the characters point of view.

Loading Poses

You can load a pose by selecting it in the browser window and then spinning one of the spinners.

If a pose was saved as a 'Left' or 'Right' pose, then if you spin the Left or Right spinners, the pose will be loaded onto the left or right side of the body automatically. If the pose was a 'Middle' pose, then it doesn't matter which spinner you use, it will be loaded back onto the original bones it was saved from.

Relative and Absolute Loading

When loading poses, the pose values can be loaded in either 'Absolute', or 'Relative' mode.

What this means is that if you have a pose of the mouth called 'Mouth open', and your character mouth is already open, then loading the pose again will cause the mouth to be opened twice as much.

Subtracting Poses

This is also very useful because you are able to subtract poses. So if your mouth is open and you wish to close the mouth, you can select the 'mouth open' pose and spin the spinner value to -100%.

Tip:

By default the spinners always load poses using relative loading.

Absolute Pose Loading

In some cases you wish to load a pose 'absolutely'. This means that the bones in the face will go to the exact positions stored in the pose file.

Relative loading may introduce errors over time. For example if you open and close the eyes on your character many times using relative loading, you may see that your eyelid bones start accumulating error. Load and absolute pose for the eye to reset the eye to the correct values.

Tip:

Hold down the 'Alt' key while loading a pose to load it using 'absolute' mode.

You can also double-click on a pose in the mixer to load it absolutely at 100%

Note:

There is a small bug in this script that means that it may load the pose using relative loading if you double click on the pose file. This is going to be fixed in the next point release. (CAT 2.51)

Tip:

You may wish to save poses of your characters facial bones in their relaxed state so that you can always load these poses absolutely to force your character face to return to the relaxed pose.

Animating Using the Pose Mixer

Always ensure that you have the right layer selected in CAT's Layer Manager, and make sure you are not in Setup Mode. To create keyframes on your character, remember to load poses with the animate button on.

All pose loading is undo-able. If you are in the middle of loading a pose and change your mind you can right click while spinning the spinner to undo.

Retrieved from "http://cat.wiki.avid.com/index.php/Pose_Mixer"


Apply Max IK

The ‘Apply Max IK’ tool enables you to use the integrated Max IK systems to animate CAT Rigs. You can now use splines to control long tails, or HI/IK on fingers to give your fingers and toes IK controls. The Max IK Systems will only affect 1 layer at a time. This gives you the ability to use IK, and FK on the same character at different times in the same scene. Alternatively, you can assign the Max IK system to a relative layer at the bottom of your stack to control all layers on your character.

Image:ApplyMaxIK.jpg

To access the tool, go to the CAT menu, and select Apply Max IK, from the options.

Image:ApplyMaxIK 1 PickHierarchy.jpg

Pick Hierarchy: Select the bones that you would like to apply the IK system to. You can select either arms, legs, fingers, toes, or tails.

Image:ApplyMaxIK 2 SplineIKSolver.jpg

SplineIKSolver: The drop down list gives you a list of available IK Systems that you may assign.

Image:ApplyMaxIK 3 PickLayer.jpg

PickLayer: You can either pick an existing layer to hold the IK system, or you can let the toll create a new layer.

Image:ApplyMaxIK 4 NumKnots.jpg

NumKnots: The Num Knots spinner defines how many knots will be used to create a spline if the tool is used to create a new spline for the Spline IK System.

Using Spline IK

When assigning Spine IK, the tool needs a spline to use to control the IK system. The tool can create a new spline based on the CAT Bone hierarchy you have selected.

Image:ApplyMaxIK BentTail.jpg

Tip:

Bend the hierarchy in the direction you would like to see the largest range of motion. For example, if you are constraining the tail of a lizard, it is important to bend the tail around the body as this will help configure the IK system for the best movement. If the tail were to be perfectly straight before you assign the IK system, then the bones in the tail may flip around when the tails it later animated. Always make sure the hierarchy you assign the spline IK system to is bent before assigning the IK System.

Image:ApplyMaxIK PickSpline.jpg

Click ‘Yes’ and a Spine will be created using the shape of the tail as a guide. You may also choose an existing spline to control your character.

Image:ApplyMaxIK Lizard.jpg

The spline will be created with the number of knots that was set in toe Apply IK dialogue.

Now you can animate the point helpers to drive the animation of the tail.

Image:ApplyMaxIK LizardHand.jpg

HI/IK System applied to the toe of the Lizard.

See Also

Tails

Limbs

Palms, Ankles, and Digits

Retrieved from "http://cat.wiki.avid.com/index.php/Apply_Max_IK"


Tips and Tricks

As its name suggests, this section is designed to give you suggestions on how to better use CAT in production.

Customizing IK Using Constraints

Rigging Bendy Arms

What to Do If You Experience a Crash

Mapping Motion from Mocap Point Clouds

Retrieved from "http://cat.wiki.avid.com/index.php/Tips_and_Tricks"


Customizing IK Using Constraints

One very cool feature of CAT's IK is that it is very customizable. You can use all of Max's constraint systems, even script into the limb. Below I will describe two leg setups that you may find useful, Knee LookAt and Orientation Constrained.

Knee LookAt

A very popular technique when using IK on legs is to have the knee look at a knee target. With CAT this is done by using an extra bone as the target object.

To setup a LookAt Knee:

The extra bone is created at the end of the bone it is created off

Note:

It is important to create the extra bone off the limb it will associated with because even after an extra bone is relinked to the pelvis, it is still part of the limb group and so will use the limb weight as its local weight. This is important for when you are working with feathered weighting.

Orientation Constrained

You would use an orientation constrained setup when you would like the leg to inherit motion off both its parent the pelvis, and the Foot platform.

To setup an orientation constrained leg:

Now when you rotate the FootPlatform the whole leg will rotate with it

To blend the leg rotation between the FootPlatform and the pelvis:

Saving up constraint settings

To save out your IK constraint settings set up the configuration in a layer and then save out the layer as a clip file with no keyframes on it. When you want to add a new absolute layer with the same configuration simply load in the layer (e.g. LookAt Knee config.clp).

Note:

Using these constraint systems will mean that it not be possible to blend to FK on the same layer. To blend to FK blend to another animation layer where the limb doesn't have this system added.

Retrieved from "http://cat.wiki.avid.com/index.php/Customizing_IK_Using_Constraints"


Rigging Bendy Arms

Image:RiggingBendyArms.JPG

This is an advanced video tutorial on how to configure bendy arms using CAT.

Click to get video

During this video, Max bones are constrained to a spline that is driven by CATBones. The intention would be to skin your character mesh to the Max bones, rather than the CATBones. The CATBones are used to drive the Max Bones.

Retrieved from "http://cat.wiki.avid.com/index.php/Rigging_Bendy_Arms"


What to do if you Experience a Crash

#REDIRECT What to Do If You Experience a Crash

Retrieved from "http://cat.wiki.avid.com/index.php/What_to_do_if_you_Experience_a_Crash"


What to Do If You Experience a Crash

(Redirected from What to do if you Experience a Crash)

If a crash happens while you are working with CAT, we would like to hear about the crash so that we can fix the problem. At CAT we strive to fix problems as fast as we can because we understand your work and the pressure you are under.

Image:CrashDump1.jpg

To help us fix the bug, it is helpful if you give us some details on the actions you performed leading up to the crash.

Image:CrashDump2.jpg

If you press the ‘Optional Data’ button, a window pops up giving you the opportunity to give us some extra details on the scene file you were working on, and the actions you were performing leading up to the crash.

Image:CrashDump3.jpg

For the developers of CAT to receive the crash information, you need to email it to us. Press the ‘Report Details’ button, to find the crash information. Here you see a window labeled, ‘3ds max Error Report Reporting Details’. Here you see a link titled, ‘View report contents’. Pressing on the link gives you a window telling you the names of the files that make up the report and if you check the ‘Display file location’ checkbox, it will also display the path of the report files on your hard drive.

Image:CrashDump4.jpg

Navigate to these files on your hard drive, and select the file labeled ‘dumpdata.zip’ and attach it to an email and send it to ‘support@catoolkit.com’.

We will do our best to make sure the problems are addressed in the following point release.

Retrieved from "http://cat.wiki.avid.com/index.php/What_to_Do_If_You_Experience_a_Crash"


MaxScript with CAT

CAT2 provides a powerful platform on which you can customise at will. An important part of this is that CAT is completely accessible to script.

Many scripts are distributed with CAT, and these scripts provide a wide range of examples that you can use to help write your own scripts.

Additionally, the CAT forum has a section dedicated to MaxScript with CAT. Here you will fine additional scripts that have been written for CAT, and questions being asked and answered by our support team and our profficient users.

CATForums Scripting (http://www.catoolkit.com/forum/forum_topics.asp?FID=13)

Table of contents

1 Interfaces

1.1 ShowProperties

1.2 ShowInterfaces

1.3 ClassOf

1.4 General

1 See Also

Interfaces

Interfaces are structures in Max that expose Methods, Properties and Actions to script allowing you to use script to access objects written in C++. Often many different types of objects can use the same interface. This allows many objects to share same script script exposure. An example of this is that every controller in the CATRig will return the interface CATControlFPInterface. More specialized controllers such as HubTrans can additionally return Interfaces that expose functionality relevant only to themselves.

To find out what functions are available on controllers and objects, you can use two different MaxScript calls:

ShowProperties

 ShowProperties <MaxObject>

Use ShowProperties to find out what values and subanims are available on an object, or controller.

ShowInterfaces

 ShowInterfaces <MaxObject>

Example: ShowInterfaces $CATParent01

Use ShowInterfaces to find out what functions/methods and properties are available on an object, or controller.

ClassOf

 ClassOf <MaxObject>

ClassOf returns the name of the class of the given.

General

For more information please refer to the 3ds Max Script documentation.

To access the controller of and object in max, use the following syntax:

 $<NodeName>.transform.controller

or a shorthand way of doing the same thing

 $<NodeName>[3].controller

CAT is simply a hierarchy of controllers and objects. All the standard Max calling conventions for navigating hierarchies, accessing subanims, and getting and setting controller values work in CAT.

See Also

MaxScript with CATRigs

MaxScript with Layers

MaxScript with Objects

Navigating CATRig Hierarchies using Script

Retrieved from "http://cat.wiki.avid.com/index.php/MaxScript_with_CAT"


MaxScript with CATRigs

Table of contents

1 CATParent

2 CATControl

3 CATNodeControl

4 Hubs

5 Limbs

6 Tails

CATParent

the CATParent stores all the information about a rig that the whole rig shares. For example, the CATParent stores the name of the rig and the CATUnits value. It also stores the Layers system. This means that all the layers details are stored on the CATParent. The name of each layer and its global weight and a bunch of other settings are stored on the CATParent.

ShowProperties $<CATParent>

 .CATName (CATRig) : string
 .CATUnits : worldUnits
 .Layers : float
 .CATMode : integer
 .LengthAxis : string
 .Node : node
 .RootHub : control
 .CATVersion : integer
 .CATRigSpace : matrix3
 .CATRigNodes : node by value array
 .CATRigLayerCtrls : control by value array
 .NumLayers : integer
 .SelectedLayer : integer
 .SoloLayer : integer
 .TrackDisplayMethod : integer
 .Layers : float

ShowInterfaces $<CATParent>

 Interface: CATParentFPInterface
  Properties:
   .CATMode : integer : Read|Write|Validated by Validator function
   .LengthAxis : string : Read|Write|Validated by Validator function
   .Node : node : Read
   .RootHub : control : Read
   .CATVersion : integer : Read
   .CATRigSpace : matrix3 : Read
   .CATRigNodes : node by value array : Read
   .CATRigLayerCtrls : control by value array : Read
  Methods:
   <void>AddHub()
   <boolean>LoadRig <TSTR>filename
   <boolean>SaveRig <TSTR>filename
   <node>GetBoneByAddress <TSTR by value>Address
   <void>UpdateUserProps()
  Actions:


 Interface: LayerRootFPInterface
  Properties:
   .NumLayers : integer : Read
   .SelectedLayer : integer : Read|Write
   .SoloLayer : integer : Read|Write
   .TrackDisplayMethod : integer : Read|Write
  Methods:
   <integer>AppendLayer <TSTR>name <name>method
      method Validated by Validator function
   <boolean>InsertLayer <TSTR>name <integer>layerID <name>method
      method Validated by Validator function
   <void>RemoveLayer <integer>layerID
   <void>MoveLayerUp <integer>layerID
   <void>MoveLayerDown <integer>layerID
   <boolean>SaveClip <TSTR>filename <time>starttime <time>endtime <integer>startlayer <integer>endlayer
   <boolean>SavePose <TSTR>filename
   <node>LoadClip <TSTR>filename <time>starttime scaledata:<boolean> transformdata:<boolean> mirrordata:<boolean> mirrorworldX:<boolean> mirrorworldY:<boolean>
      scaledata default value: true
      transformdata default value: true
      mirrordata default value: false
      mirrorworldX default value: false
      mirrorworldY default value: false
   <node>LoadPose <TSTR>filename <time>starttime scaledata:<boolean> transformdata:<boolean> mirrordata:<boolean> mirrorworldX:<boolean> mirrorworldY:<boolean>
      scaledata default value: true
      transformdata default value: true
      mirrordata default value: false
      mirrorworldX default value: false
      mirrorworldY default value: false
   <TSTR>GetFileTagValue <TSTR>filename <TSTR>tag
   <boolean>LoadHTR <TSTR>filename <TSTR>camfile
   <boolean>LoadBVH <TSTR>filename <TSTR>camfile
   <boolean>LoadFBX <TSTR>filename <TSTR>camfile
   <boolean>LoadBIP <TSTR>filename <TSTR>camfile
   <void>CollapsePoseToCurLayer()
   <boolean>CollapseTimeRangeToLayer <time>StartTime <time>Endtime <time>Frequency quiet:<boolean>
      quiet default value: true
   <void>CopyLayer <index>LayerID
   <void>PasteLayer Instance:<boolean> CopyLayerInfo:<boolean>
      Instance default value: false
      CopyLayerInfo default value: true
  Actions:
OK

CATControl

Every controller bone in the CAT rig structure exposes this interface. That means that every bone will return the CATParent, and a name and can be used to save out a clip file for example.

ShowInterfaces $<CATBone>[3].controller

 Interface: CATControlInterface
  Properties:
   .CATParent : node : Read
   .Name : TSTR by value : Read|Write
  Methods:
   <void>PasteLayer <control>source <integer>fromindex <integer>toindex <boolean>instance
   <void>PasteRig <control>source
   <boolean>SaveClip <TSTR>filename <time>StartTime <time>EndTime
   <node>LoadClip <TSTR>filename <time>time <boolean>mirrordata
   <boolean>SavePose <TSTR>filename
   <node>LoadPose <TSTR>filename <time>time <boolean>mirrordata
  Actions:

CATParent

Use this to access the CATParent from any CATBone. This means that if you have a pointer to a finger bone, then you can access the CATParent and perform all the layer operations etc...

Example:

$<CATBoneName>[3].CATParent
Name

The local name of this bone.

<void>PasteLayer <control>source <integer>fromindex <integer>toindex <boolean>instance

Use this function to paste rig settings from another CATBone

<void>PasteRig <control>source

Use this function to paste rig settings from another CATBone

<boolean>SaveClip <TSTR>filename <time>StartTime <time>EndTime

Use this function to save a pose file using script.

<node>LoadClip <TSTR>filename <time>time <boolean>mirrordata

Use this function to load a clip file using script.

<boolean>SavePose <TSTR>filename

Use this function to save a pose file using script.

<node>LoadPose <TSTR>filename <time>time <boolean>mirrordata

Use this function to load a pose file using script.

CATNodeControl

In addition to the CATControl Interface, every bone exposes the CATNodeControl interface.

 Interface: CATNodeControlFPInterface
  Properties:
   .NumArbBones : integer : Read
   .Node : node : Read
   .Address : TSTR by value : Read
   .SetupTM : matrix3 by value : Read|Write
   .tmBoneParent : matrix3 by value : Read
   .tmBoneWorld : matrix3 by value : Read
   .tmBoneLocal : matrix3 by value : Read
   .LocalScale : point3 by value : Read
   .tmChildParent : matrix3 by value : Read
   .Stretchy : boolean : Read|Write
   .EffectHierarchy : boolean : Read|Write
   .ApplyTransforms : boolean : Read|Write
   .NumLayerFloats : integer : Read
   .ExtraBones : control by value array : Read
   .SetupModeLocks : bitArray : Read|Write|Validated by Validator function
   .AnimationLocks : bitArray : Read|Write|Validated by Validator function
   .MirrorBone : node : Read|Write
  Methods:
   <control>AddArbBone()
   <control>GetArbBone <index>index
   <control>CreateLayerFloat()
  Actions:
 Interface: ExtraRigNodesInterface
  Properties:
   .ExtraRigNodes : node by value array : Read|Write
  Methods:
   <void>AddExtraRigNodes <node by value array>nodes
   <void>RemoveExtraRigNodes <node by value array>nodes

What this means is that you can always access the node of a bone by using the convention

<catrigbone>.node

Example:

If you have a bone selected that has extra bones added to it, like a head bone that has facial bones, you can use the following...

($[3].GetArbBone 1).node

You will then have the node of the 1st extra bone that is attached to the selected bone.

Note:

Internally we call 'Extra' bones 'Arb' bones. This is simply a naming different. Arb is short of Arbitrary. Arb bones are bones that have no predefined use, unlike finders, limb, or tail bones that all have a predefined use.

Hubs

In addition to the Hubs expose a special interface for doing special things that only hubs can do. This includes things like adding arms and legs and tails

 Interface: HubFPInterface
  Properties:
   .PinHub : boolean : Read|Write
   .OrientTM : matrix3 : Read
   .DangleCtrl : control : Read
  Methods:
   <void>CollapsePoseToCurLayer()
   <void>CollapseTimeRangeToCurrLayer <time>StartTime <time>EndTime <time>Frequency
   <void>AddArm()
   <void>AddLeg()
   <void>AddSpine()
   <void>AddTail()
  Actions:

Limbs

ShowInterfaces $<LimbBone>[3][1].controller

 Interface: LimbFPInterface
  Properties:
   .IKTarget : node : Read
   .IsLeg : boolean : Read
   .IsArm : boolean : Read
   .LMR : integer : Read|Write
   .SymLimb : control : Read
  Methods:
   <void>CollapsePoseToCurLayer()
   <void>CollapseTimeRangeToCurrLayer <time>StartTime <time>EndTime <time>Frequency
   <void>CreateIKTarget()
   <void>MoveIKTargetToEndOfLimb()
  Actions:
 Interface: CATControlInterface
  Properties:
   .CATParent : node : Read
   .Name : TSTR by value : Read|Write
  Methods:
   <void>PasteLayer <control>source <integer>fromindex <integer>toindex <boolean>instance
   <void>PasteRig <control>source
   <boolean>SaveClip <TSTR>filename <time>StartTime <time>EndTime
   <node>LoadClip <TSTR>filename <time>time <boolean>mirrordata
   <boolean>SavePose <TSTR>filename
   <node>LoadPose <TSTR>filename <time>time <boolean>mirrordata
  Actions:

Tails

 Interface: Tail Functions
  Properties:
  Methods:
   <void>CollapsePoseToCurLayer()
   <void>CollapseTimeRangeToCurrLayer <time>StartTime <time>EndTime <time>Frequency
  Actions:
 Interface: CATControlInterface
  Properties:
   .CATParent : node : Read
   .Name : TSTR by value : Read|Write
  Methods:
   <void>PasteLayer <control>source <integer>fromindex <integer>toindex <boolean>instance
   <void>PasteRig <control>source <boolean>mirrordata
   <boolean>SaveClip <TSTR>filename <time>StartTime <time>EndTime
   <node>LoadClip <TSTR>filename <time>time <boolean>mirrordata
   <boolean>SavePose <TSTR>filename
   <node>LoadPose <TSTR>filename <time>time <boolean>mirrordata
  Actions:

OK

Retrieved from "http://cat.wiki.softimage.com/index.php/MaxScript_with_CATRigs"

MaxScript with Layers

Table of contents

1 LayerRoot

1.1 LayerRootFPInterface

1.1.1 Properties:

1.1.2 Methods:

2 LayerInfo

2.1 SubAnims

2.2 LayerInfoFPInterface

2.2.1 Properties:

2.2.2 Methods:

LayerRoot

The CATParent holds a controller called the LayerRoot. The LayerRoot is the controller that manages all the layers in the character. The LayerRoot holds a table of LayerInfo controllers. The LayerInfo controllers hold information relevant to each layer such as the layer name, global weight, timewarp curve, etc.

LayerRootFPInterface

This Interface exposes all the layer manipulations to script. This interface is available on every layer controller, the CATParent and the layer root controller. Although many controllers expose the LayerRootFPInterface, and function calls made to a LayerRootInterface are passed directly on to the LayerRoot controller. The LayerRootFPInterface is exposed on multiple controllers in the character hierarchy simply for the convenience of the scripter.

Properties:

 .NumLayers : integer : Read

The number of layers currently in the layer stack on this character

 .SelectedLayer : integer : Read|Write

If a layer is currently selected, then this returns its index, or -1 if no layer is soloed

 .SoloLayer : integer : Read|Write

If a layer is currently soloed, then this returns its index, or -1 if no layer is soloed

 .TrackDisplayMethod : integer : Read|Write

Returns the setting for Track display. This crrelates to the setting on the CATParent Rollout

Methods:

 <integer>AppendLayer <TSTR>name <name>method method Validated by Validator function

Add a new layer to the end of the layer stack.

Example: $CATParent.AppendLayer “NewLayerName” #absolute

 <boolean>InsertLayer <TSTR>name <integer>layerID <name>method method Validated by Validator function

Insert a layer into the layer stack at the specified position

 <void>RemoveLayer <integer>layerID

Remove the specified layer.

 <void>MoveLayerUp <integer>layerID

Move the specified layer up one position in the layer stack.

 <void>MoveLayerDown <integer>layerID

Move the specified layer down position in the layer stack.

 <boolean>SaveClip <TSTR>filename <time>starttime <time>endtime <integer>startlayer <integer>endlayer

Save a CAT Clip file to the hard drive.

Example: $CATParent.SaveClip “c:\backflip.clp” 20 130 2 3

 <boolean>SavePose <TSTR>filename

Save a pose file to the hard drive.

Example: $CATParent.layers.controller.SavePose “c:\point.pse”

 <node>LoadClip <TSTR>filename <time>starttime scaledata:<boolean> transformdata:<boolean> mirrordata:<boolean> mirrorworldX:<boolean> mirrorworldY:<boolean> scaledata default value: true transformdata default value: true mirrordata default value: false mirrorworldX default value: false mirrorworldY default value: false

Load a CAT Clip file from the hard drive.

 <node>LoadPose <TSTR>filename <time>starttime scaledata:<boolean> transformdata:<boolean> mirrordata:<boolean> mirrorworldX:<boolean> mirrorworldY:<boolean> scaledata default value: true transformdata default value: true mirrordata default value: false mirrorworldX default value: false mirrorworldY default value: false

Load a CAT Pose file from the hard drive.

 <TSTR>GetFileTagValue <TSTR>filename <TSTR>tag

Given a Clip or Pose file, return a value of a specified tag in the File.

 <boolean>LoadHTR <TSTR>filename <TSTR>camfile
 <boolean>LoadBVH <TSTR>filename <TSTR>camfile
 <boolean>LoadFBX <TSTR>filename <TSTR>camfile
 <boolean>LoadBIP <TSTR>filename <TSTR>camfile
 <void>CollapsePoseToCurLayer()

Take the result of the layer stack and bake it into a layer.

 <boolean>CollapseTimeRangeToLayer <time>StartTime <time>Endtime <time>Frequency quiet:<boolean> quiet default value: true

Collapse the current layer stack down to one new layer.

 <void>CopyLayer <index>LayerID

Copy the Current later ready to Paste it.

 <void>PasteLayer Instance:<boolean> CopyLayerInfo:<boolean> Instance default value: false CopyLayerInfo default value: true

Paste the copied layer onto this layer stack

LayerInfo

The LayerRoot holds a table of LayerInfo controllers. Each LayerInfo controller holds the properties for a layer in the layer stack.

SubAnims

 .weights : float

The weights subanim found on the LayerInfo controller is global weights controller for this layer.

 .timewarp : float

Access to the layer time warp controller.

 .transform : transform

The transform controller for the Transform node.

To display the Interfaces for the LayerInfo controller, use the following line of MaxScript.

 ShowInterfaces $<CATParent>.layers.controller[1].controller

LayerInfoFPInterface

Properties:

 .LayerName : TSTR by value : Read|Write

The name of the layer as it appears in the LayerManager rollout.

 .LayerColour : color by value : Read|Write

The color of the layer. This is the colour that is used to colour the CATRig when Colour Modes is set to 'Layer Colours'

 .LayerType : TSTR by value : Read

Use this to find out what type of layer this LayerInfo controller is maintaining.

Example: "Absolute"

 .LayerEnabled : boolean : Read|Write

This value enables or disables the layer.

 .TransformNodeOn : boolean : Read|Write

An Setting allowing you to turn the transform node on and of, or to check the current state of the transform node button.

 .LayerIndex : index : Read

The index of this layer in the Layer stack. An index of 1 means that it is at the very top of the layer stack.

 .CATParent : node : Read

Access to the CATParent node.

Methods:

 <node>GetTransformNode()

Returns the INode for the transform node if it is currently created.

Retrieved from "http://cat.wiki.avid.com/index.php/MaxScript_with_Layers"


MaxScript with Objects

Table of contents

1 CATObject

1.1 CATObjectFPInterface

1.1.1 Properties:

1.1.2 Methods:

CATObject

All CATBones use and CATObjects to display their geometry in the viewport.

CATObjectFPInterface

Properties:

 .TMController : integer : Read

This value returns the Transform controller for this object.

 .SelectedLayer : integer : Read|Write

Returns the currently selected layer.

 .SoloLayer : integer : Read|Write

Returns the index of the solo layer, or -1 if no layer is soloed.

Methods:

 <void>CopyMeshFromNode <node>node

Add a new layer to the bottom of the layer stack. Returns the index of the new layer.

Example: $.CopyMeshFromNode $Sphere01

 <void>PasteRig <object>pasteobject

Paste the setting from an object onto the current one.

Retrieved from "http://cat.wiki.avid.com/index.php/MaxScript_with_Objects"


Navigating CATRig Hierarchies using Script

Table of contents

Accessing Bones in the CATRig Skeleton

Accessing bones in a skeleton using their names is very error prone. If you write scripts that access bones using their names, it means that if an artist renames a bone, then your scripts will break. CAT was designed so that you can navigate the hierarchies using script without needing to know the names of the bones in the rig. This means that you can write scripts that will work on any CATrig, regardless of the naming conventions used.

The CATRig is structures like a tree. Each bone has children bones that you can navigate to and get their children. There are special controllers in CAT that hold parts of the tree together, but do not show up in the hierarchy you see in Max. For example, there is a controller called 'Limb', whose job is to maintain the limb. Each bone in the limb is generic and only contains information related to that specific bone. If you want information about the limb, you can access the limb controller.

The basic tree structure looks like this. From a hub controller you can get to a limb controller, and from a limb controller you can get to the collarbone controller. From a hub controller you can get to a tail controller, and from a tail controller you can get to any of the tail bone controllers. From a hub controller you can get to a spine controller, and from a spine controller you can get to any of the spine bone controllers, or to the hub controller at the tip of the spine.

        Hubs Hubs->Limbs
        Hubs->Limbs->Collarbone
        Hubs->Limbs->Limb Bones
        Hubs->Limbs->Limb Bones->Bone Segments
        Hubs->Limbs->Palm/Ankle
        Hubs->Limbs->Palm/Ankle->Digits
        Hubs->Limbs->Palm/Ankle->Digits->Digit Bones
        Hubs->Tails
        Hubs->Tails->Tail Bones
        Hubs->Spines
        Hubs->Spines->Spine Bones
        Hubs->Spines->Tip Hub

Getting Bone Addresses

We have provided methods that enable you to access bones using what we call bone 'addresses'. Each bone in a CATRig contains a unique address.

Example:

Select a bone and type the following into the listener.

$[3].address

You should get a result that will looks something like the following.

"SceneRootNode.Hub.Spine[0].Hub.Limb[0].LimbBone[1].BoneSeg[0]"

Once you have an address, then is is very easy to get the same bone on a different rig. There is a method on the CATParent for retrieving a bone from the skeleton using an address. This method is called GetBoneUsingAddress.

Example:

Select the CATParent of a CATRig and type the following into the listener and press enter. In this example, we have selected a CATRigs left elbow.

$[3].address

You should get a result that will looks something like the following.

"SceneRootNode.Hub.Spine[0].Hub.Limb[0].LimbBone[1].BoneSeg[0]"

Getting Bones using Addresses

Once you have a bone address, you can use that address on the same, or on a different CATRig to retrieve the same bone. We can use the address we generated earlier to find the left elbow on any CATRig.

$.GetBoneByAddress "SceneRootNode.Hub.Spine[0].Hub.Limb[0].LimbBone[1].BoneSeg[0]"

returns...

$Object:MaramaLForeArm1 @ [18.374180,2.811419,91.353607]

Tip:

Remember, from any bone in CAT, you can access the CATParent using the following syntax... $[3].CATParent. See Accessing CATControls

Getting all the Bones that make up the CATRig

The CATParent provides a method that will generate a list of all the bones in a CATRig called 'CATRigNodes'.

Example: Select the CATParent of a CATRig and type the following into the listener and press enter.

$.CATRigNodes
#($Object:MaramaPelvis @ [0.643538,12.460782,56.982174], 
 $IKTarget:MaramaLPlatform @ [-9.479717,45.484272,2.016279], 
 $Object:MaramaLThigh @ [-5.399519,13.610688,52.234413], 
 $Object:MaramaLCalf @ [-5.073243,42.623035,42.755692], 
 $Object:MaramaLAnkle @ [-9.923340,42.132290,12.445667], 
 $Object:MaramaLToe @ [-8.354513,46.355228,5.667924],
 $IKTarget:MaramaRPlatform @ [22.299629,-26.312172,2.125263],
 $Object:MaramaRThigh @ [7.615567,12.286880,53.555431],
 $Object:MaramaRCalf @ [18.307613,1.576054,27.048307],
 $Object:MaramaRAnkle @ [15.838839,-24.331221,10.763937],
 $Object:MaramaRToe @ [21.849598,-24.039907,5.285047],
 $Object:MaramaSpine1 @ [0.084267,13.617851,61.769054],
 $Object:MaramaSpine2 @ [0.155154,17.742903,70.302628],
 $Object:MaramaSpine3 @ [0.838520,20.302643,79.403381],
 $Object:MaramaRibcage @ [1.721320,22.587023,88.560089],
 $IKTarget:MaramaLIKTarget @ [-14.076582,23.387424,73.722427],
 $Object:MaramaLCollarbone @ [-0.265896,27.761074,90.442078],
 $Object:MaramaLUpperArm @ [-7.214790,19.994431,91.494965],
 $Object:MaramaLForeArm1 @ [-22.375963,8.502111,91.433647],
 $Object:MaramaLForeArm2 @ [-18.546179,13.426756,83.416336],
 ...)

All the bones in the entire rig have been collected and put into an array for you. This saves you the time of learning how to navigate CATRig hierarchies.

Getting all the layer controllers in a CATRig

The CATParent also provides a method that will generate a list of all the layer controllers in a CATRig called 'CATRigLayerCtrls'.

Example: Select the CATParent of a CATRig and type the following into the listener and press enter.

$.CATRigLayerCtrls
#(Controller:LayerWeights, Controller:LayerMatrix3, Controller:LayerFloat, Controller:LayerWeights, Controller:LayerFloat, Controller:LayerFloat, Controller:LayerFloat, Controller:LayerMatrix3, Controller:LayerMatrix3, Controller:LayerWeights, Controller:LayerMatrix3, Controller:LayerFloat, Controller:LayerMatrix3, Controller:LayerMatrix3, Controller:LayerWeights, Controller:LayerFloat, Controller:LayerFloat, Controller:LayerFloat, Controller:LayerMatrix3, Controller:LayerMatrix3, ...)

The 'Pose Mixer' utility uses this function to find all the controllers that will be keyframed.

Navigating Bones

Every bone in a CATRig is controlled by a controller. This controller exposes the CATNodeControl interface. This means that if you want to access information about that bone you can.

Example:

$[3].address

Example: To get the layer controller for a CATBone using the following line...

$[3].layertrans.controller

Note:

Some bones do not have a layertrans controller, such as the bones in the procedural spine.

Navigating Hubs

Hubs are the 'joiners' of the CAT hierarchy. Hubs have legs and arms, tails, spines and extra bones attached.

For any hub, you can see how many limbs are attached and then you can access the limb and get the bones from that limb.

Example: If you have a hub bone selected and you want to know how many limbs are attached to the hub use the following line of script.

$[3].limbs.count

Navigating Limbs

Limbs are made up of 4 types of controllers, ‘Limb’, Collarbone, Bone, BoneSeg, Palm, IKTarget, and Upvector. ‘Limb’ holds all the information about the whole Limb. The name of the Limb, etc, and it also keep a pointer to each bone in the Limb and the collarbone and ankle and the IKTarget.

From one Limb bone you can access everything in a CAT rig.

Example:

To get the ‘Limb’ controller from a limb bone use the following line of script.

$[3].Limb

Example:

If you have a Limb bone selected and you want to know how many bones in the Limb use the following line of script.

$[3].Limb.bones.count

Example:

To get the second bone in the Limb use the following

$[3].Limb.bones[ 2 ]

Example:

if you have one Limb bone selected and you want to select all the bones in the Limb, you can use the following line.

for bone in $[3].Limb.bones do selectMore bone.node

Example:

If you have a Limb bone selected and you want to get the name of the 1st bone in the Limb, you can do the following.

$[3].limb.bones[1].node.name
        $ -> Accesses the selected bone
        $[3] -> Accesses the selected bone's transform controller
        $[3].limb -> Accesses the selected bone's tail controller
        $[3].limb.bones[1] -> Accesses the 1st bone in the limb
        controller
        $[3].limb.bones[1].node -> Accesses the node of the 1st bone.
        $[3].limb.bones[1].node.name -> Accesses the name of the node of the
        1st bone in the Limb.

Navigating Tails

Tails are made up of 2 types of controllers, TailData, and TailTrans. TailData holds all the information about the whole tail. The name of the tail, etc, and it also keep a pointer to each bone in the tail.

From one tail bone you can access everything in a CAT rig.

Example:

To get the TailData controller from a tail bone use the following line of script.

$[3].tail

Example:

If you have a Tail bone selected and you want to know how many bones in the tail use the following line of script.

$[3].tail.bones.count

Example:

To get the second bone in the tail use the following

$[3].tail.bones[ 2 ]

Example:

if you have one tail bone selected and you want to select all the bones in the tail, you can use the following line.

for bone in $[3].tail.bones do selectMore bone.node

Example:

If you have a tail bone selected and you want to get the name of the 1st bone in the tail, you can do the following.

$[3].tail.bones[1].node.name
$ -> Accesses the selected bone
        $[3] -> Accesses the selected bone's transform controller
        $[3].tail -> Accesses the selected bone's tail controller
        $[3].tail.bones[1] -> Accesses the 1st bone in the tail
        controller
        $[3].tail.bones[1].node -> Accesses the node of the 1st bone.
        $[3].tail.bones[1].node.name -> Accesses the name of the node of the
        1st bone in the tail.

Known Issues

This section of the CAT Wiki is dedicated to issues we have discovered with CAT. These issues may cause crashes, or simply an inconvenience. We always work hard to fix any problems in CAT we find with each release, but some problems are harder to fix than others.

Please note that the problem you are experiencing may have been fixed already. Before sending a bug to techsupport@catoolkit.com, please check that we have not already fixed this bug in a newer release than the one you are working with.

For a list of changes in CAT: Recent Changes in CAT

Table of contents

1 Rigging

2 Layers

3 Clips and Poses

4 CATMotion

5 Utilities

6 Files

Rigging

Layers

If you are in pivot editing mode and try to change layers, CAT will crash

Clips and Poses

Saving Animation on layers with Max IK Chains will crash Max

CAT's animation saver does not support Reaction Controllers

CATMotion

Rigs using Z-Axis alignment may crash when assigning CATMotion Layers

Utilities

Files

Retrieved from "http://cat.wiki.avid.com/index.php/Known_Issues"


If you are in pivot editing mode and try to change layers, CAT will crash

When working with the foot pivot system, you will be in sub-object mode in the motion panel.

If you attempt to change layers at this point, CAT will cause a crash in Max.

See Also:

Foot Pivot System

Retrieved from "http://cat.wiki.avid.com/index.php/If_you_are_in_pivot_editing_mode_and_try_to_change_layers%2C_CAT_will_crash"


Saving Animation on layers with Max IK Chains will crash Max

Summary

You may have used the Apply Max IK utility found in the CAT menu in Max to assign one of the standard IK systems to a CAT hierarchy. You may wish to do this, for example, if you have a long tail on your rig, and you wish to use the Spline IK in max to control it.

If you have used a Max IKChain on any body part in your CATRig, then saving out an animation file using either the Clip Manager or the Right Click Save Animation features, then Max will crash.

We tried to fix this issue for CAT2.5, but were not able to.

Cause

When the clip saver tries to save out the IK system, it gets to the Bone that has the IK system applied to it, and when it queries the IK Controller for a basic value, the IK system crashes. We don't know why and are unable to avoid the crash automatically.

Workaround

Possibly the simplest workaround would be to collapse animation from the IK system to a basic keyframe layer and then save this out.

Retrieved from "http://cat.wiki.avid.com/index.php/Saving_Animation_on_layers_with_Max_IK_Chains_will_crash_Max"


CAT's animation saver does not support Reaction Controllers

Currently the Animation Saver in CAT does not support some of the more complex procedural controllers that are available in Max.

The Reaction Controller cannot be saved as part of a Animation Clip file. This is because the reaction controller reacts to objects in the scene, and we have not been able to save these complex relationships to the CAT clip file yet.

Retrieved from "http://cat.wiki.avid.com/index.php/CAT%27s_animation_saver_does_not_support_Reaction_Controllers"


Rigs using Z-Axis alignment may crash when assigning CATMotion Layers

Bug

If you are working on a rig that is set to Z-Axis alignment, then add a CATMotion layer you may experience a crash.

The crash is caused when adding CATMotion layers to palms. The rigs that do not crash are rigs that do not use palms. This would include rigs such as spider and centipede.

Workaround

Currently there is no workaround. However, if you write to techsupport@catoolkit.com we can give you access to a build that has this problem fixed.

See Also

Understanding Bone Length Axis

Retrieved from "http://cat.wiki.avid.com/index.php/Rigs_using_Z-Axis_alignment_may_crash_when_assigning_CATMotion_Layers"


Loading Old files from CAT1 may cause a crash

If you are using CAT 2.52, the loading old files from CAT1 may require you to go through the following steps to upgrade them CAT 2.52.

For newer version of CAT, we have addressed this issue.

If you need access to CAT2.4, please contact support@catoolkit.com and we can provide this.

Retrieved from "http://cat.wiki.avid.com/index.php/Loading_Old_files_from_CAT1_may_cause_a_crash"


FAQ

What type of keyframe interpolation does CAT use?

CAT does not specify any particular keyframe interpolation scheme. Instead CAT allows you to use any of the 3dsmax animation controllers. This means that you can chose between Euler, Quaternion, TCB, and Bezier interpolation simply by assigning the controller that you prefer. See Assigning Controllers to Layers

Retrieved from "http://cat.wiki.avid.com/index.php/FAQ"


Welcome to CATmuscle

Welcome and congratulations on taking the time to familiarise yourself with the latest is muscle deformation technology! With CATMuscle you will open the door to a new range of possibilities for controlling your skin deformations, heavily reducing those frustrating hours of envelope tweaking.

CATMuscle is the latest addition to the CAT family and we see it as the missing link. It doesn't matter how great your character animation is if you aren't happy with the way your model is deforming.

Of course, the tool you now have available to you is a pre-release version and is still being perfected. If you see how it can better suit your requirements then tell us! We are also very interested to see your work - feel free to share your results with us by sending in movies etc.

Here's wishing all the best with your experimentation!

Scott Pearson

CEO

Character Animation Technologies Ltd

Retrieved from "CAT Muscle 0.7 BETA CHM help file (local)"


Retrieved from "CAT Muscle 0.7 BETA CHM help file (local)" + edits


What is CATMuscle?

CATMuscle represents a new approach to controlling the way your mesh is deformed. It was created to get around the limitations of simply linking the movement of mesh vertices to the bones of the underlying rig structure as you typically do when skinning.

Somehow there never seemed to be an elegant solution to problem areas such as shoulders and backsides, no matter how long we tweaked the bone envelopes or vertex weights. Meanwhile we found that existing muscle simulation software required too much complex setup, was too slow to interact with in the viewport and often still didn't provide the right result.

CATMuscle is designed around the premise that what looks right, is right. It doesn't attempt to accurately simulate an anatomical structure and it doesn't require a biologically accurate, underlying skeletal structure.

CATMuscles use Bezier patch surface mathematics to control the deformation of patches or groups of bones that are laid down across the surface of your character. The muscles are included in your skinning solution and provide you with much better control over how your mesh deforms than otherwise possible.

CATMuscle is compatible with all existing character animation tools. It can be used in conjunction with Biped, Custom built rigs, and of course CATRigs.

The idea is that you add as many or as few muscles as you need to get the effect you require. In some cases this may just be a few muscle strands in the neck of your dinosaur, or it may be a complete muscular structure.

Once in place, muscles can be given volume by adding collision objects (spheres) which the muscles can slide over. CATMuscles can also be linked to reaction controllers and open transform controllers etc, enabling you to create incredibly sophisticated muscle rigs.

CATMuscle's preset system allows you to save up CATMuscle rigs, including all those reaction controllers etc and apply them with ease to another character rig. This important tool means you do not have to start from scratch every time and allows you to make use of the muscle presets we have already created for you.

What we have found is that if the muscles are positioned carefully they can indeed give the illusion of a complex underlying anatomical structure, and this without significant slowdown as you interact with your character in the viewport.

In the rest of this document we will introduce all of the important aspects of the system.

See also

The CATMuscle Interface

The CATMuscle Preset Manager

What is CATMuscle made up of?

Creating a CATMuscle

Applying a CATMuscle

Retrieved from "CAT Muscle 0.7 BETA CHM help file (local)"


Working With Muscles

In 3ds Max CAT, muscles are helper objects normally used to create a skin that will behave realistically when it is stretched and deformed.

For example, you can see here how Marama's shoulder and upper arm have collapsed after being twisted and pulled in various directions. (Marama is one of the standard CATrigs included with 3ds Max CAT.)

Marama's shoulder will behave better once we finish applying the CATMuscle to her CATBones.

Marama's shoulder will behave better once we finish applying the CATMuscle to her CATBones.

That's because Marama's rigging includes no muscle objects: the shape of her skin is determined by the relative positions of her CATBones.

In the image, the purple patches are the segments of a CATMuscle that we have created and shaped to use as muscles for her pectorals and shoulder. To complete the job, we would need to:


Two Kinds of Muscle

Two kinds of muscles: CATMuscles and Muscle Strands

Two kinds of muscles: CATMuscles and Muscle Strands

As the Create panel shows, you can create two kinds of muscles:


CATMuscles

Modify panel for a CATMuscle

Modify panel for a CATMuscle

CATMuscles are multi-segmented helper objects that are best used for broad areas, such as the shoulders and pectorals, that need relatively consistent stretching and deforming.

Once you have created a CATMUscle, you can modify how it is segmented, its collision detection properties, etc.


Muscle Strands

Freshly created muscle strand, suitable for shaping into a bicep

Freshly created muscle strand, suitable for shaping into a bicep

Muscle strands are like a Bezier curve between 2 points. Strands provide more precision than CATMuscles, and give much better results when the skin must be twisted.

While CATMuscles are best for skinning shoulders and pectorals, muscle strands work better for skinning arms and legs.

The image shows a freshly created muscle strand intended for use a bicep.

When you are still in the Create panel, you have some ability to shape the bicep with your mouse. But the Modify panel is where you set most of strand's properties.

Once you are satisfied with your bicep:

Once you are satisfied with the behavior of one arm, you can easily create a copy of the arm (including all the CATBones, the muscle strands, the skin, and so forth) that is a mirror of the original.

 

Retrieved from "http://cat.wiki.softimage.com/index.php/Working_With_Muscles"

The CATMuscle Interface

The CATMuscle Interface holds all the settings for a single CATMuscle.

Muscle Properties

Name: This edit box allows you to rename the muscle and all its handles quickly and easily

Colours: The swatch box allows you to edit the colour of the muscle.

U Segs: The number of muscle segments across the width of the muscle.

V Segs: The number of segments along the length of the muscle.

Handle Size: The size of all the handles for the muscle in the viewport.

‘L’ ‘M’ and ‘R’: These radio buttons tell the muscle whether it is being used on the Left, Right, or Middle side of the body. The LMR settings are used in the renaming of muscles. Muscles on both sides of the body can have the same name, but L M or R will be inserted in to the name to make them unique.

Tip:

Use LMR is used when copying/pasting muscles. When the settings of a ‘L’ muscle, is pasted onto a ‘R’ muscle, the positions of all the handles are automatically mirrored.

This button will hide the entire muscle and all its handles

This button will show the entire muscle and all its handles

Hides the handles only

Unhides the handles

Copies a muscle's settings.

Pastes a muscle's settings.

Mirror Axis: These radio buttons control which axis the muscle will be mirrored through when copying and pasting muscle settings with Copy and Paste.

More on Copying and Pasting

Copy and Paste copy and paste muscle settings between muscles. This includes the number of segments, handle size, handle positions and colour.

If both muscles are on the same side as identified by the LMR radio buttons then the settings will be pasted and the two muscles will lie on top of each other. If the muscles are on different sides (e.g. on is L and the other R) then the settings will be mirrored.

All the LOCAL positions of all the handles are also pasted. This means that muscles linked onto bones on either side of the body will be positioned relative to their own parents.

The axis that the settings are mirrored on is controlled by the Mirror Axis radio buttons. CATRig bones will always require the X axis. Biped will tend to require the Y axis be selected.

Collision Detection

Collision detection is used to add volume to your muscle system. Usually a couple of spheres will suffice but you can add as many as you wish.

Collision detection is implemented using primitive spheres because they are very fast to calculate. Collisions are calculated on the mathematics of the sphere, rather than its geometry so it doesn't matter how many polygons your sphere has.

Spheres can be scaled and distorted using the scale tool. Modifiers will not have any effect. You can of course animate the scale, uniformly or not, and the radius of the sphere using any 3ds max controller.

The spheres in the collision list are evaluated from the top to the bottom of the list. This means the effect of the top most sphere is applied before the second sphere is calculated. The stacking of collision spheres can allow the user to create effects not directly supported by CATMuscle.

Use Add to select a sphere from the scene that you wish to use for collision detection.

Select a sphere from the list and hit the remove button to take it out of the list.

Hardness: Each sphere's effect on the muscle can be weighted. Setting this value to 0% removes the effect of the sphere completely from the muscle. This setting is animatable and can be linked into reaction controllers etc for a more sophisticated level of control.

Distortion: Vertices moved by spheres during collision detection can be moved in a few different directions. 100% Distortion, forces the vertices to move directly towards the spheres surface. This will cause a stretching effect on the muscle.

Hardness and Distortion are both animatable parameters. This means you could drive them using a reaction controller and an Expose Transform to force spheres to become hard based on the movement of bones in the hierarchy.

Vertex Normal: When this radio button is checked the muscle patch vertices will move relative to their own coordinates.

Object X: When checked the vertices will move along the X axis of the selected sphere.

Smooth: When checked smooth evens off the transition between the muscle area that is effected by the sphere and the non-effected area.

Invert: When checked the vertices move in the opposite direction.

See also

The CATMuscle Preset Manager

What is CATMuscle made up of?

Creating a CATMuscle

Applying a CATMuscle

Retrieved from "CAT Muscle 0.7 BETA CHM help file (local)"


The CATMuscle Preset Manager

The Muscle Manager is helper object you create in your scene in the CAT Objects menu. It looks like a dummy object.

The preset manager is designed to work with any hierarchy in 3ds max. It saves out presets that include full controller hierarchies and can save out all constraints and scripts used in the controller hierarchy. It does not attempt to save out any keyframes as it intended for rigging, rather than animation.

Rig Name: The rig name allows you to specify the current rig’s name you are working on. After saving a preset, you may want to load it onto another rig with a different name.

If you have followed common naming convention of prefixing bone names with Character names then the rig loader will be able to find all the correct bones in your new character and link up the muscles

For example if you have a bone

$BobLThigh

and you have specified 'Bob' as the name of your character

and you load bobs muscle preset onto 'Fred', then the muscle preset loader will look for a bone

$FredLThigh

Muscles: This listbox displays the muscles in the scene that the Muscle manager has loaded.

Add new muscles to the list of muscles managed by the Muscle Manager

Removes the muscles that are selected in the listbox from the list of muscles in the Muscle Manager.

Hides the muscles that are selected in the listbox.

Hides the muscles that are selected in the listbox.

Handle Size: This spinner allows you to set the handle size on any muscles that are selected in the muscles listbox.

Rigging

This list box allows you to specify extra rigging information that should be considered part of your muscle rig. This will enable the preset saver to save those items with the rest of the muscles.

Add things to this list that are used in conjunction with the muscles. Only procedurally controlled objects should be added. That means no keyframed bones should be part of this list.

Add new nodes to the list of rigging nodes managed by the Muscle Manager

Removes the rigging nodes that are selected in the listbox from the list of rigging nodes in the Muscle Manager.

Hides the rigging nodes that are selected in the listbox.

Hides the rigging nodes that are selected in the listbox.

Mirror is a tool for use while creating a rig setup. It allows you to mirror selected objects, exactly relative to your animation rig. The 'X', 'Y' and 'Z' radio buttons control which axis that the objects will be mirrored in. When objects are mirrored they are automatically added to the Rigging list box.

NB: This is a tool that allows you to speedily create sophisticated rig structures such as shoulder blade setups. It is not a tool for beginners and a strong understanding of rigging is a requirement here. Objects can only be mirrored one at a time.

To Mirror a Point Helper:

1. Create 2 point helpers on either side of the head of your rig.

CATRig with point helpers on either side of head

2. Link both objects to the head

3. Select The Muscle Preset Manager object in the scene

4. Click the Mirror button

5. Select the point helper you wish to mirror

6. Select the 2nd point helper.

The second point helper will move into a position that exactly mirrors the first one, relative to the head.

CATRig with point helpers equidistant on either side of head

Presets

Muscles: When selected CATMuscles in the Muscles list box will be saved.

Rigging: When selected rigging elements in the Muscles list box will be saved.

Saves a CATMuscle preset.

Loads a CATMuscle preset.

Loading CATMuscle presets

The CATMuscle preset loader loads the CATMuscle preset onto a rig, automatically relinking all the muscles and rigging objects in the same way as the original setup.

Naming conventions are important! In the first instance the system looks for the name of the original rig. E.g. if your original muscle system was linked to a base rig called 'Doberman', and the scene you are loading into has a rig called 'Doberman', the muscles will be loaded onto that rig.

The naming conventions used for the rest of the rig are important too. If the rest of the rig structure is named completely differently to the original rig the relinking process will fail.

Tip:

The Preset Loader uses the names of the nodes in your scenes when loading presets, so ensure you have unique names. For example, on quadrupeds ensure the front legs are named something like "frontleg" rather than just 'leg'.

If your target rig has a different name to the original rig you can tell the rig system what it is by entering the new name in Rig Name at the top of the Muscle Presets menu. As long as the rest of the rig has the same naming conventions as the original rig loading will continue as normal.

Presets are not scaled automatically on loading so that if you are loading onto a rig that has a different size to the original then you will have to resize the rig to fit.

How to load a CATMuscle Preset:

1. Select the Muscle Manager

2. Enter the name of the target rig.

3. Click Load Preset and select the CATMuscle preset you wish to load.

See also

The CATMuscle Interface

What is CATMuscle made up of?

Creating a CATMuscle

Applying a CATMuscle

Retrieved from "CAT Muscle 0.7 BETA CHM help file (local)"


What is CATMuscle made up of?

CATMuscles are made up of groups of bone segments which are positioned on the surface of your model and then included in your skinning solution to give you greater control over your skin deformations. Muscles are positioned by moving corner handles. Each corner handle has vector handles to control the interpolation of the muscle between the corners.

The vector handles work in the same way as editing any other spline curve in 3ds max. In fact CATMuscle uses Bezier patch surface mathematics to calculate the interpolation.

Each of the handles has its own PRS (Position, Rotation, Scale) controller. This means that you can edit and animate the position, rotation and scale of each handle as you would any other object in 3ds max. You can also apply other transform controllers if you wish.

See also

The CATMuscle Interface

The CATMuscle Preset Manager

Creating a CATMuscle

Applying a CATMuscle

Retrieved from "CAT Muscle 0.7 BETA CHM help file (local)"


Creating a CATMuscle

To create a CATMuscle:

1. Go to the Create Menu.

2. Go to the Helpers Menu.

3. From the drop down box select CAT Objects.

4. Select CATMuscle.

5. Drag in the viewport.

A newly created CATMuscle

6. Go to the Modify Panel to view the CATMuscle Interface.

See also

The CATMuscle Interface

The CATMuscle Preset Manager

What is CATMuscle made up of?

Applying a CATMuscle

Retrieved from "CAT Muscle 0.7 BETA CHM help file (local)"


Applying a CATMuscle

The following is a quick tutorial to give you an idea of when you'd use a CATMuscle and what is involved in doing so. For more in depth tutorials please watch the tutorial videos on our website.

You will usually choose to use CATMuscle when you have reached the limits of what you can achieve with envelope editing etc.

In the example below the problem area we will concentrate on is the hind leg of the Doberman. It seems that regardless of what settings are used there are always problems with the area along the back of the leg when the leg bends up too much.

There is a similar scene file to the one used in this tutorial provided with CATMuscle. It is called Dog.max.

Doberman model showing deformation problems on thigh

The answer to the problem is to create a CATMuscle which will be placed along the back of the leg to control the skin deformation in that area. Part one is to create the new CATMuscle. This is covered in Creating a CATMuscle.

Once created, the next stage is to position the CATMuscle. This should be done in your skinning pose (Setup Mode if you are using CAT).

1. Return to your skinning pose.

2. Select any part of the muscle and move/rotate it roughly into position along the back of the thigh.

Doberman with new CATMuscle roughly positioned against back of leg

3. Position/rotate the individual Corner Handles so that the muscle lines up with the mesh. To further tweak the surface use the smaller Vector Handles.

Doberman with new CATMuscle in place

4. Link the Corner Handles to the correct bones. In this case the two upper corner handles will be linked to the thigh bone and the two lower handles will be linked to the tibia (the bone below the thigh). Linking is done with the standard 3ds max linking tool.

Linking a Corner Handle to the tibia bone

5. Edit the Muscle Properties in the Modify Panel. You may wish to start by renaming the muscle. Descriptive names are good; we called it BackLeg_RearUpper. You may also wish to edit the number of segments on the muscle. The general rule is use as few as possible. We found a height of 4 and width of 2 worked fine for this one.

6. Add the muscle to your skinning solution. Simply select your mesh, add a Skin modifier (if you don't have one already) and Add the BackLeg_RearUpper bones to the solution using the Add button.

Be sure you don't add the Handles! (e.g. BackLeg_RearUpperRTL). The muscle segments will have the name BackLeg_RearUpperRxx. xx representing the number of the muscle segment.

7. Test the result. Move to the 'problem frame' and see the difference!

Doberman with CATMuscle added to back leg

Same frame showing CATMuscles, including the new one on the back leg

See also

The CATMuscle Interface

The CATMuscle Preset Manager

What is CATMuscle made up of?

Creating a CATMuscle

Retrieved from "CAT Muscle 0.7 BETA CHM help file (local)"


Bone Muscles

Bone Muscles are made up lots of small bone segments. This is useful if you wish to export the muscles to your game engine. Bone Muscles are really only recommended if you are a game developer wishing to export your muscles.

Bones Muscles use Bezier patch mathematics to drive the motion of many small bone segments. These small bone segments can be used in the Skin modifier in 3ds max, or any other matrix palette skinning system. They can be exported to game engines along with the rest of your hierarchy.

Retrieved from "CAT Muscle 0.7 BETA CHM help file (local)"


Examples of CATMuscle Use

Retrieved from "CAT Muscle 0.7 BETA CHM help file (local)"


Why Use CATMuscle?

CATMuscle is the best thing since sliced bread.

Retrieved from "CAT Muscle 0.7 BETA CHM help file (local)"
















































































*** Unlinked Stuff *** ?!?


Limb IK Targets

Every limb has an IK target built in. By default, in the case of legs, the IK target is displayed as a rectangle; on arms it is shown as a cross (point helper).

Because they of their function IK targets are not linked to the rig, though they are transformed by the Layer Transform Gizmo.

The IK target on a leg is called a FootPlatform. The only difference between a FootPlatform and an arm IK target is that while keyframing the FootPlatform allows you to animate the pivot position manually with the Foot Pivot System.

CATMotion has controls to animate the position of the pivot throughout the motion cycle. Normally you would want it at the toe as the foot lifts and at the heel as it plants, but of course the ultimate decision lies with you.

By default, with a FootPlatform the local Y axis is forwards and the local X axis is up.

Image:Standard Human rig - footplatform.jpg

The FootPlatform on the Standard Human rig

See also

Editing Limb IK Targets

Foot Pivot System

Retrieved from "http://cat.wiki.avid.com/index.php/Limb_IK_Targets"


Layered Animation

Retrieved from "http://cat.wiki.avid.com/index.php/Layered_Animation"


Extra Bones

Image:MarineWithGun.jpg

Image:MaramaFace.jpg

Extra bones are bones you can add to any bone in CAT for any reason you like. You can use Extra bones for armour, breathing bones, weapons, walking sticks, facial bones etc...

Adding Extra Bones

Editing Extra Bones

Retrieved from "http://cat.wiki.avid.com/index.php/Extra_Bones"


Introducing Extra Bones

Extra bones are for all those things that you want to connect into your rig. These would include bones for controlling the secondary dynamics on bellies and breasts, weapon bones, walking sticks, and facial bones etc. Obviously the possibilities are endless.

Extra bones can be created from any CAT bone. By default they are linked to the bone they were created from, but once created they can be relinked to anything, simply by using Max's Select and Link tool.

It is possible to create a rig solely out of extra bones. An example of where this would be useful is creating a facial rig.

See also

Creating facial rigs

Editing Extra Bones

Retrieved from "CAT 2.4 CHM help file (local)"


Adding Extra Bones

Extra bones can be added to any CATBone using two different methods.

Image:AddBodyPartAddBone.jpg

On every bone in CAT in the Modifier panel rollout you will see a button to 'Add Bone'.

Image:RickClickAddBone.jpg

You can also right click on any bone in CAT, and if you CATRig is in Setup Mode, then you will see an 'Add Bone' menu item on the bottom left quad.

Retrieved from "http://cat.wiki.avid.com/index.php/Adding_Extra_Bones"


Editing Extra Bones

Image:ExtraBoneSetup.jpg

Name: The local name of this bone. See Using CAT's Naming System

Copy Bone, Paste Bone, and Paste Bone Mirrored: Buttons for coping and pasting this bones settings onto other bones. See Copying and Pasting Rig Parts

Use Custom Mesh: Toggle whether the custom mesh is displayed. See Customising the Geometry on CATBones

X, Y, X Values: The bones current dimensions.

Add Extra Bone: Press this button to add a new extra bone to your CATRig as a child of the current bone. See Adding Extra Bones

Editing Extra Bones

Extra bones have the same basic parameters as any other CAT bone. Their biggest difference is that they can be unlinked and relinked to any other object in the rig., including other CAT bones.

The Bone Setup rollout

Name: Name of the selected bone.

Copy limb settings.

Paste limb settings.

Paste Mirror limb settings.

Use Custom Mesh: This is used for when you have baked your bone mesh changes into your bone. When checked the bone will show as the edited mesh. When unchecked you will just see the underlying box (unedited bone).

X: The size of the bone in the X dimension, measured in CATUnits.

Y: The size of the bone in the Y dimension, measured in CATUnits.

Z: The size of the bone in the Z dimension, measured in CATUnits.

Creates an Extra Bone, linked to the selected bone.

Note:

Even though you can link the extra bone to anything in the scene if you wish, the bone will always remain parented to its source bone in the Weights View for feathered weighting.

See also

Introducing Extra Bones

Creating facial rigs

Retrieved from "CAT 2.4 CHM help file (local)" + Retrieved from "http://cat.wiki.avid.com/index.php/Editing_Extra_Bones"


Creating Facial rigs

With CAT2 you can create complete facial rigs with their own layer setup etc. The advantage of this is that you can then use CAT's non linear animation system to control blending between expressions and phonemes in the same way you would with Max's morpher, completely separate from the rest of your character's animation.

xxx

Marama with facial rig setup

Using this system, a facial rig is achieved simply by creating a pelvis and then adding extra bones as required. The pelvis is then linked to the head of the character.

When setting up the bones, get one side looking right and then Paste Mirror bone positions onto opposing extra bones to quickly set up the other side of the face. The bones are mirrored relative to their root object, in this case the pelvis.

xxx

To stop the rig returning to its CATParent, select the pelvis and go to the Bone Hierarchy rollout in the Link Info panel. When in Setup Pose make sure Setup Mode Inheritance Positions and Rotations are both checked (see below). Having these checked means that when the rig is in Setup Mode it will inherit its positions from the object it is linked to (in this case the head of its character) rather than returning to its own CATParent.

xxx

When setting up your different target expressions, use local adjustment layers and then blend between expressions simply by animating the adjustment layer's Global Weights.

Once one facial rig has been setup it can be saved as a CATRig preset. The same goes for the phoneme blending etc, which would of course be saved out as a CLP file. As with any other CATRig the preset can then be reloaded an quickly edited to suit a different character. The facial animation will most likely still work on the new face, with only a minimum of tweaking required.

Retrieved from "CAT 2.4 CHM help file (local)"


Cat-Wiki:Community Portal / Forums, Tutorials and Blogs

The documentation in this wiki is not the only place to learn about 3ds Max CAT. You can post questions, view tutorials, and discuss 3ds Max CAT at the following sites:

Retrieved from "http://cat.wiki.avid.com/index.php/Cat-Wiki:Community_Portal"


Unused images

Please note that other web sites may link to an image with a direct URL, and so may still be listed here despite being in active use.

Showing below up to 21 results starting with #1.

  1. LicMan2.jpg . . 20:04, 17 Sep 2006 . . Phtaylor

  2. Nox1.jpg . . 14:50, 18 Sep 2006 . . Phtaylor

  3. RangesViewRangesToolbar.jpg . . 14:11, 22 Sep 2006 . . Phtaylor

  4. RangesViewRangesToolbarPositionRanges.jpg . . 14:11, 22 Sep 2006 . . Phtaylor

  5. CopyPastePoses BodyPoses3.jpg . . 20:43, 27 Sep 2006 . . Phtaylor

  6. Killer plant eats monkey copy.jpg . . 18:36, 17 Oct 2006 . . Phtaylor

  7. PoseMixer.zip . . 21:55, 23 Oct 2006 . . Phtaylor

  8. Installer8c.jpg . . 15:14, 6 Dec 2006 . . Phtaylor

  9. CATMotion.zip . . 13:45, 20 Feb 2007 . . Phtaylor

  10. AddKey.gif . . 15:47, 21 Feb 2007 . . Phtaylor

  11. Limbanimation v2-5.jpg . . 11:33, 28 Jun 2007 . . Grahamef (Limb Animation rollout)

  12. Save Limb Pose button.jpg . . 11:45, 28 Jun 2007 . . Grahamef (Save Limb Pose button)

  13. Load Preset button.jpg . . 11:47, 28 Jun 2007 . . Grahamef (Load Preset button)

  14. Layer Transform menu.jpg . . 16:50, 28 Jun 2007 . . Grahamef (Layer Transform menu)

  15. Ghosting in viewport.jpg . . 16:53, 28 Jun 2007 . . Grahamef (Game Char with ghost showing previous layer's animation)

  16. Ranges View showing sub-ranges.jpg . . 14:08, 29 Jun 2007 . . Grahamef (Ranges View showing sub-ranges)

  17. Out-of-Ranges button.jpg . . 14:31, 29 Jun 2007 . . Grahamef (Out-of-Ranges button)

  18. Copy Tail Settings button.jpg . . 17:14, 11 Jul 2007 . . Grahamef

  19. Paste Tail Settings button.jpg . . 17:14, 11 Jul 2007 . . Grahamef

  20. Paste Mirror Tail Settings button.jpg . . 17:15, 11 Jul 2007 . . Grahamef

  21. PoseManager.jpg . . 12:21, 16 Jul 2007 . . Phtaylor

Retrieved from "http://cat.wiki.avid.com/index.php/Special:Unusedimages"


Orphaned pages

Showing below up to 6 results starting with #1.

  1. Changes in CAT 2.505

  2. Changes in CAT 2.3

  3. Copyright/Disclaimer

  4. Main Page

  5. Recent Changes in CAT

  6. Saving and loading Poses and Animation

Retrieved from "http://cat.wiki.avid.com/index.php/Special:Lonelypages"



Absolute Layers

New animation is created in absolute layers. Motion data is also imported into absolute layers. As you keyframe, your animation keys are stored in the selected animation layer.

See also

CATMotion Layers

Adjusting Existing Animation

Animation Modes

Blending between layers

Editing layer time parameters

Retrieved from "CAT 2.4 CHM help file (local)"


Blending between layers

Blending between layers is often as simple as animating the Global Weight value for the top layer. Often this will be all you require. Sometimes, however you will wish to blend one limb separately to another or perhaps simply turn off some elements (e.g. the legs) to use the animation from another layer, below the current layer on the stack. This is called feathered weighting. One example of this would be where you are using keyframe animation for the upper body and CATMotion for the legs.

Feathered weighting is achieved by editing the local weights of individual rig elements.

Global weights are managed with the Global Weight spinner/curve editor. Local weights have their own spinner and curve editor.

Weights View is stored on the CATParent. However you can also access the global and local weights directly.

To navigate directly to the Global Weight Curve Editor:

Track View opens up to display the layers in the layer stack. The curves controlling the layer weights for the selected layer can now be viewed/edited.

To blend on an absolute layer:

1. Go to the frame you wish to blend to and add another absolute layer in the Layer Manager rollout.

The absolute layer overrides existing animation layers and the rig remains stationary on the frame that the layer is created.

2. Rename it as required.

3. Click on the Curve Editor button beside Global Weight in the Layer Manager rollout in the Animation panel.

Global Weight is displayed, showing the existing layers for the rig. In the image above there are three layers, PreHit, Reactor and Gets Up.

4. Create a key on the frame you wish to blend on from and set the weight to 0.0.

5. Create another key on frame you wish to blend on at and set the weight to 1.0.

The layer will now blend on and the character will be controlled by the new layer.

To navigate directly to the Local Weight Curve Editor:

Track View opens up to display the layers in the layer stack. The curves controlling the layer weights for the selected object, in the selected layer can now be viewed/edited.

To turn down the weight on the left arm only (feathering layer weights):

  1. Select the left arm.

  2. Go to the Local Weight spinner and turn it down to 0.

The arm will be no longer be affected by the current layer.

See Also

Editing Layer Time Parameters

Looping Animation

Decoupling looping ranges from layer keyframes

Curve controlled Animation Retiming

Retrieved from "CAT 2.4 CHM help file (local)"


Editing layer time parameters

Using CAT you can squash, stretch, move and reverse the time for individual layers. This is done in Ranges View.

To edit ranges:

1. Click on the Ranges button in the Layer Manager rollout.

The layers will be displayed as individual tracks.

2. The ranges for the layers can then be squashed, stretched and moved as normal in 3ds max. They can also be reversed.

Extended control over "Sub-Ranges"

In CAT2 you can now edit the Layer Weight, Time Warp and the Layer Transform gizmo ranges separately from the rest of the animation.

CAT2 Ranges View showing extended "sub-range" editing possibilities

See also

Blending between layers

Looping Animation

Decoupling looping ranges from layer keyframes

Retrieved from "CAT 2.4 CHM help file (local)"


Looping Animation

In CAT2 you can use Max Out-of-Range types to loop individual animation layers. You can also use the Max Position Ranges button to manually control the loop range for the entire Animation Layer. These tools are very powerful and are particularly focused on the needs of game studios.

Looping an Animation Layer:

See Also:

Decoupling looping ranges from layer keyframes

Curve controlled Animation Retiming

Retrieved from "CAT 2.4 CHM help file (local)"


Editing the range of a loop cycle

Max has a well hidden function called Position Ranges. What it does is decouple the animation range from the actual animation keyframes. Normally all controllers will loop according to the times of your first and last keyframes. This is very useful if you wish to loop over a longer or shorter period than your animation. Normally in Max you would have to edit the changes for each leaf of a controller individually. For example, for the X, Y and Z component of a Euler Rotation controller. Doing this for a whole character is pretty time consuming.

In CAT you can use the same tool to control an entire animation layer, which is much more practical :-)

To use Position Ranges on an animation layer:

1. Right Click on the toolbar area of the Curve Editor.

2. From the menu select Show Toolbars/Ranges: Dope Sheet

Ranges: Dope Sheet toolbar

3. Select the Position Ranges button.

4. Edit the Layer Range as usual.

See also

Editing layer time parameters

Looping Animation

Time Warp Curves

Retrieved from "CAT 2.4 CHM help file (local)"


Time Warp Curves

Time Warp curves enable you to control the velocity of an entire animation layer with a single spline curve. Matrix bullet time effects were never easier! The Time Warp curve can be found if you select the CATParent and open it up in the Curve Editor. They can also be quickly accessed from the Time Warp, Curve Editor button in the Layer Manager.

Curve Editor showing Time Warp curve

See also:

Editing layer time parameters

Editing the range of a loop cycle

Copy/Paste animation layers

Retrieved from "CAT 2.4 CHM help file (local)"


Copy/Paste animation layers

You can now copy and paste animation layers, including between rigs. It is also possible to instance layers which means that different rigs can reference the same animation layer.

A character with an instanced animation layer can still be retimed, time warped and transformed. This application is particularly useful for crowd sequences.

See also:

Introduction to the Layer Manager

Transforming the Layer in the Viewport

Curve controlled Animation Retiming

Retrieved from "CAT 2.4 CHM help file (local)"


Starting a New Animation

New animation is created in Absolute layers. Absolute layers include CATMotion, absolute [keyframe animation] layers and imported motion data (which is loaded into an absolute animation layer).

Before you can start animating you need an absolute layer to create your animation in.

To create an Absolute layer:

  1. Select any part of your CATRig.

  2. Go to the Layer Manager rollout in the Animation panel.

  3. Click on the Create Absolute button.

    An Absolute Layer is created in the Layer Manager listbox.

  4. In the Mode drop down menu choose Animation Mode.

You are now ready to start keyframing.

Assign new animation layers as you need them. It is very useful to break your animations down into manageable segments.

See Also

Adjusting Existing Animation

Blending between layers

Editing layer time parameters

Transform Layer in Viewport

Retrieved from "CAT 2.4 CHM help file (local)"


Introduction to the Layer Manager

The Layer Manager is the heart of CAT’s Non Linear Animation system. Here keyframe animation, CATMotion and imported motion data can all be created and adjusted simultaneously.

Animation is created and adjusted in animation layers. Absolute Layers (which include CATMotion) are used to create animation in and Adjustment Layers are used to tweak/offset animation. All animation is stored in standard 3ds Max animation controllers which are piped into CAT's layer system. This is important because it means that you can use all 3ds Max animation controllers and access them as normal in the Curve Editor.

CATMotion and Absolute Layers override layers below them in the stack. Relative layers offset animation previous to them in the stack.

There is effectively no limit to how many animation layers you can have.

To access the Layer Manager rollout:

  1. Select any part of the rig.

  2. Go to the Animation Panel.

  3. Go to the Layer Manager rollout.

CAT2 Layer Manager

Animation Mode drop down

This drop down menu has three options: Setup Mode, Animation Mode, and Stretchy Bones Mode.

Setup Mode: Puts the rig back into Setup Mode, for rig editing and skinning.

Animation Mode: Typical keyframe animation is done in this mode.

Stretchy Bones Mode: When in the this mode the bones you can animate the lengths of bones simply by dragging the rig elements, similarly to Setup Mode.

Rig Colour Mode drop down

This drop down menu has two options: Rig Colour Mode and Colour by Layer Mode.

Rig Colour Mode: Displays the rig with the default object colours.

Colour by Layer Mode: Colours the rig according to the colour of the layer that is affecting it at any given point in time.

Ranges View: Use ranges view to edit the timing of individual animation layers, similarly to using a video editing tool. This feature is core to CAT's NLA system.

Add Animation Layer drop down

Delete Animation Layer: Deletes selected layer.

Add Absolute Layer: Creates a new absolute layer to keyframe into.

Add Adjustment Layer (Local): Creates a Relative layer to offset/tweak animation below it in the layer stack. The offsets are calculated in the space of the rig elements. This is the same as a Relative Layer in CAT 1.

Add Adjustment Layer (World): Creates a Relative layer to offset/tweak animation below it in the layer stack. The offsets are calculated in world space.

Add CATMotion Layer: Adds a CATMotion layer. In CAT1 there was only one CATMotion Layer in the Layer Manager and it was always present. In CAT2 you can have as many CATMotion layers as you wish - or none at all.

Copy Animation Layer: Copies the selected animation layer.

Paste Animation Layer: Layers can now be copied or instanced, in the animation stack or between characters.

Collapse Layer Stack: Collapses all animation layers into a single animation layer.

Name: Edit the name of the selected animation layer.

Layer Colour: Allows you to edit the colour of the selected animation layer. Used when the rig is using Rig Colouring Mode.

Display Layer Transform Gizmo: The Layer Transform Gizmo is used to transform the whole animation layer. The Layer Transform Node can now be animated.

Dump current pose: Creates a snapshot of the current pose into the active layer.

Move animation layer down the stack: Remember that the visual bottom of the stack is actually the top!

Move animation layer up the stack

Ignore: When checked the selected layer is greyed out and ignored. This can also be achieved by double clicking on a layer.

Solo: When checked all layers other than the current layer will be ignored.

Global Weight: Opens up the curve editor to allow you to edit global layer weights (In CAT1 this used to be up by the ranges editor with a dumbbell symbol on it). Animating layer weights is used when blending between animations.

Local Weight: Opens up the curve editor to allow you to edit the local weights for the selected rig element. This is used when feathering layer weights.

Time Warp: Opens up the curve editor to allow you to edit the time warp graph. This allows you to retime the animation with a single curve.

See Also

Using the Layer Manager

Creating new animation

Adjusting Existing Animation

Blending between layers

Editing Layer time parameters

Looping Animation

Decoupling looping ranges from layer keyframes

Curve controlled Animation Retiming

Copy/Paste animation layers

Collapsing layers

Retrieved from "CAT 2.4 CHM help file (local)"


Transforming the Layer in the Viewport

CAT allows you to use the layer transform gizmo to transform your animation layers around in the viewport. This includes moving, rotating and scaling the data, both uniformly and non-uniformly. In CAT2 the layer transform gizmo is now animatable. The layer transform gizmo is particularly useful for lining up clips for blending between them.

To transform your animation layer with the layer transform gizmo:

  1. Select the layer you wish to transform in the Layer Manager.

  2. Click on the Layer Transform Gizmo button.

    The Gizmo appears in the viewport (in this case at the feet of the rig).

  3. Select the Transform Layer Gizmo and move it.

    The rig and its entire animation is moved too!

The animation keys for the layer transform gizmo are can be found in the Transform branch, on the CATParent under the selected layer in the Curve Editor. They can also be quickly accessed through the Ranges View.

Animation keys for the Layer Transform Node in the Curve Editor

The Layer Transform Menu

If you select the Layer Transform Node you will see this menu (above) in the Animation Panel. It includes two functions new to CAT2.4, ghosting and animation looping.

Ghost Options

Display Ghost: When checked the system displays a ghost of the layer's animation, even when another layer is selected. This is a powerful tool that makes lining up animations between layers a breeze. Ghosts can be turned on and off on a layer by layer basis.

Game Char with ghost showing previous layer's animation

Animation Looping

This function could described as a walk on spot mode for hand animation. It works by displacing the animation linearly from the start and end points specified. The idea is that the movement in space is removed so that the character is left animated on the spot. This tool is mainly for game animators who are creating walk cycles for game assets.

Start Time: The frame that the animation loop starts on.

End Time: The frame that the animation loop ends on.

Remove Displacement: When checked the overall displacement of the character is removed.

See also

Blending between layers

Retrieved from "CAT 2.4 CHM help file (local)"


Adjusting Existing Animation

Using CAT’s adjustment layers in the Layer Manager you can non-destructively edit existing animation, including CATMotion, absolute keyframe animation, motion capture data and even other adjustment layers.

Keyframes in an adjustment layer offset the existing animation. For example you could use an adjustment layer to control the head movements of a rig walking with CATMotion. The head movements would applied on top of the existing CATMotion animation.

There are two types of adjustment layer, local and world adjustment layers. Local adjustment layers are useful for offsetting the a rig element relative the to rig (e.g. tilting down the head). World adjustment layers are particularly useful for offsetting IK targets, such as Foot IK targets in a mocap sequence.

Local Adjustment Layers

Local adjustment layers are the same as relative layers in CAT1. They offset animation in the coordinate space of the rig.

To create a Local Adjustment layer:

  1. Select any part of the rig.

  2. Go to the Layer Manager rollout in the Animation panel.

  3. Make sure Available is selected in the Layers list box

  4. Go to the add layer drop down menu.

  5. Select Add Local Adjustment Layer

A new layer is created below the existing layer.

This new layer is selected and weighted to 100%, meaning that you can start tweaking your animation immediately.

World adjustment layers

World adjustment layers offset the animation in world space.

To create a World Adjustment Layer:

  1. Select any part of the rig.

  2. Go to the Layer Manager rollout in the Animation panel.

  3. Make sure Available is selected in the Layers list box

  4. Go to the add layer drop down menu.

  5. Select Add World Adjustment Layer

A new layer is created below the existing layer.

This new layer is selected and weighted to 100%, meaning that you can start tweaking your animation immediately.

Tip:

World adjustment layers are especially useful when offsetting limb IK targets, e.g. from mocap data.

See also

Creating new animation

Blending between layers

Editing layer time parameters

Transform Layer in Viewport

Retrieved from "CAT 2.4 CHM help file (local)"


Using the Layer Manager

Using CAT’s layer manager you can create separate new animations, quickly and simply tweak existing animations, blend between animation layers, edit the time and speed of individual layers and even transform your animation layer in the viewport.

All animation is held in standard 3ds Max animation controllers. This means that your animation is created as you would create any other animation in 3ds Max, and that you have the same access to all keyframes, in Track View.

Individual layers can be saved and loaded using the Clip Manager.

Image courtesy of Daniel Meitn Roca

See also

CATMotion Layers

Animation Modes

Looping Animation

Decoupling looping ranges from layer keyframes

Curve controlled Animation Retiming

Copy/Paste animation layers

Collapsing layers

Retrieved from "CAT 2.4 CHM help file (local)"


Animating Tails

Tails are easy to work with. Just rotate selected tail bones and they will curl up. Each bone stores its own keyframes.

Multiple tail links selected

When rotated up they all curl up

Retrieved from "CAT 2.4 CHM help file (local)"


Effect Hierarchy

Pushing Around the Rig

One of the features of the CATRig is that if you move a bone in the hierarchy (regardless of whether you are in IK or FK), the bones on either side will rotate to accommodate the move. This is system allows you to just push the rig around quickly and intuitively. This system is called Effect Hierarchy. Below are three examples of this:

Bending the elbow

Arm position before edit

Simply moving the elbow back bends the arm

Pushing around the ribcage

If you move the upper arm, the ribcage (hub) rotates to accommodate this.

Select the upper arm

As the arm is moved the ribcage rotates to fit

Tweaking the fingers

Outstretched fingers

Moving the middle digit bends up the finger

See also

CATBone Hierarchy Menu

CAT's IK System

Retrieved from "CAT 2.4 CHM help file (local)"


Palm Keyframe Controls

As well as holding the same Limb Animation rollout as the rest of the limb the Palm has its own, unique functionality. These include the Digit Manager and the Palm Animation rollout.

Palm Animation rollout

Target Align: The Palm Animation rollout has a single slider on it called Target Align. The Target Align value lets you control whether the palm inherits the rotations of the IK target or not.

When the Target Align value is set to 0.0 the palm will move with the IK target but will stay aligned to the last bone on the limb (forearm on a human).

E.g. of palm not inheriting IK target rotations

When the Target Align value is set to 1.0 the palm inherits both positions and rotations from the IK target.

E.g. of palm inheriting IK target rotations

Digit controls include a digit manager with advanced digit modifiers.

See also

The Digit Manager

Retrieved from "CAT 2.4 CHM help file (local)"


The Digit Manager

The Digit Manager provides a powerful interface for controlling the digits on a palm. The Digit Manager rollout is found in the Animation panel on a selected palm. It has two parts, Preset Poses and Digit Modifiers.

Preset Poses

Weight: The ratio that the highlighted preset has on the digits. This allows you to blend on a preset.

Save the current digit rotations as a new pose preset.

Delete a pose preset from the Preset Poses listbox (not from the hard drive).

Digit poses are held in the Preset Poses list box. Each pose stores the rotations for all the digits present when a pose preset is saved. These rotations can then be loaded onto any other palm.

If the selected palm has fewer digits than those of the pose preset the extra digits are ignored. If the palm has more digits the extra digits will receive no rotation data.

Each pose preset can be weighted, allowing you to blend from one pose to another or to mix poses to create a new preset.

To load a Digit Pose:

The digit rotations are applied immediately.

To blend on a Digit Pose:

  1. Click once on the chosen pose in the Preset Poses list box.

  2. Drag up the weight in the Preset Weight spinner.

The digits will blend from their existing rotations towards the rotations of the selected preset.

To save a pose:

  1. Edit the digits to the desired pose.

  2. Click the Save Pose button.

  3. Enter the new pose name and save.

Tip:

By default digit poses are held in \3dsmax\plugcf\CAT\HandPosePresets\

Tip:

You are not limited to using CAT’s digit manipulation controls. You can also select individual digit bones in the viewport and transform them as normal.

Digit Modifiers

The Digit Modifiers provide tools to enable you to manipulate the digits, either singly or as a group. Selected digits can be transformed parametrically with the Spread, Bend, Roll and Curl spinners.

To select the digits you wish to modify:

Spread

Spread rotates the selected digits away/towards each other from the base of the digit.

Bend

Bend rotates the selected digits up and down from the base of the digits.

Roll

Roll rotates the selected digits around their length.

Curl

Curl rotates the all the digit bones up and down.

Tip:

All modifications are relative to the existing rotations.

To curl up the fingers on a hand:

  1. Select the palm.

  2. Go to the Animation panel.

  3. In the Digit Manager, highlight the digits you wish to edit.

  4. Drag the Curl spinner.

The fingers curl in.

See also:

Palm Keyframe Controls

Retrieved from "CAT 2.4 CHM help file (local)"


The Hub Hierarchy Menu

The Hub Hierarchy rollout has two settings, Allow IK Rotations and Pin Bone.

The Hub Hierarchy rollout

Allow IK Rotations

Allow IK Rotations is for retargeting only. When checked the hub will both rotate and move to find a best fit between the positions of the limb IK targets and the angles of the limbs. When unchecked the hub will move only.

Pin Bone

Hubs can be pinned with a check box called Pin Bone. It allows you to temporarily lock a hub in position so that its parent can be transformed without affecting its child hub. A typical example of this would be pinning the ribcage of a character so that you can tilt the pelvis without repositioning the upper body.

Pinning is achieved by a switch found in the Hub Hierarchy rollout (found in the Hierarchy/Link Info panel) called Pin Bone.

To adjust the pelvis without affecting the ribcage:

  1. Select the ribcage.

  2. Go to the Hierarchy/Link Info panel.

  3. On the Hub Hierarchy panel check Pin Bone.

Now when you manipulate the pelvis the ribcage isn't affected.

The Pelvis is selected

As the pelvis is moved the ribcage remains static

Pin Bone works by setting a keyframe on both the parent hub (pelvis) and the child hub (ribcage). The ribcage is effectively being counter rotated automatically to keep it in place.

See also:

CATBone Hierarchy Menu

Retrieved from "CAT 2.4 CHM help file (local)"


Animating Scale

In CAT2, scales controllers are now included in the non linear animation system. That means that you can now animate scales in animation layers in the same way as rotations and positions. This applies whether you are in Stretchy Bones Mode or not. In fact Stretchy Bones Mode is really just animating scales, but gives you a nice, user friendly and interactive way to control the scaling.

Unlike normal Max hierarchies, CAT elements will not skew when scaled non-uniformly. Scales are inherited as normal; if you scale the parent object the children will also be scaled. Scale inheritance can be controlled on a bone-by-bone basis in the CATBone Hierarchy Menu.

See also

Animating in Stretchy Bones Mode

Animation Modes

Retrieved from "CAT 2.4 CHM help file (local)"


CATBone Hierarchy Menu

An important part of CAT2 is the CATBone Hierarchy system. This is found in the Inheritance/Link Info panel with the default Max Lock rollouts.

The CATBone Hierarchy rollout is similar in principle to the Max Locks system. It allows you to control what will be edited and inherited on individual CATRig bones.

CATBone Hierarchy rollout

Apply Transforms: This control relates to the layer transform gizmo only. If unchecked the selected bone will not have transformations from the layer transform gizmo piped into it. Most bones have this left unchecked because they are linked to a parent object and don't require any transform themselves. Normally the only bones that require transformations to be applied to them are the root node (pelvis) and the IK targets. The exception to this is when the IK target is linked to the rig (e.g. an arm IK target is linked to the ribcage).

In this case you would turn Apply Transforms off on the linked IK target. If you don't the IK target will receive transforms both from the ribcage AND the layer transform gizmo, and will be transformed twice.

Setup Mode Inheritance

Positions: controls whether the bone will inherit positions from its parent in Setup Mode.

Rotation: controls whether the bone will inherit rotations from its parent in Setup Mode.

Manipulation Locks

Stretchy Bone: When checked the bone will stretch in Setup Mode or in Stretchy Bones Mode. In Animation Mode stretch is locked on all bones.

Effect Hierarchy: When checked moving a joint will rotate the bones on either side of it allowing you to interact with the rig almost solely with the Move tool.

Setup Mode Locks

Position: controls whether you can move the selected bone in Setup Mode.

Rotation: controls whether you can rotate the selected bone in Setup Mode.

Scale: controls whether you can scale the selected bone in Setup Mode.

Animation Locks

Position: controls whether you can move the selected bone in Animation or Stretchy Bone Mode.

Rotation: controls whether you can rotate the selected bone in Animation or Stretchy Bone Mode.

Scale: controls whether you can scale the selected bone in Animation or Stretchy Bone Mode.

Tip:

Position will normally be locked on most bones because if you are able to move a bone you will be able to move it away from the rig. An example of where you would unlock it is where you wish to rip a limb/bone off the rig.

See also:

The Hub Hierarchy Menu

Retrieved from "CAT 2.4 CHM help file (local)"


Introduction to Keyframe Animation

CAT uses a layer based animation system. That means that all keyframes are created in layers. There are two main types of layer: Absolute Layers and Adjustment Layers.

Absolute layers are used to create new animation. Standard 3ds Max animation controllers are used to store all of the transforms in the same way as if you were animating as normal with any standard 3ds Max object.

Adjustment layers are used to tweak existing animation. Keyframes in an adjustment layer offset existing layers below them in the stack, including CATMotion.

Before you can begin animating you have to be in an active layer and be out of Setup Mode!

Keyframe animation in CAT is as simple as selecting the element you wish to animate and transforming it in the viewport. A CATRig is set up so that you can just push it around into the pose you require.

Because your animation is stored in standard 3ds Max animation controllers you can create and edit your animation as you are used to. Keyframes can be edited in Track View as normal.

How various rig elements and sub-elements relate to each other is dictated by their setup parameters, accessed in the Modify panel. Some rig elements have extra animation parameters too; most notably the limbs, palms and ankles.

Tip:

Before you skin up your rig you may wish to make a few trial animations to make sure you are happy with the way the rig behaves.

Image compliments of Digital Pictures Iloura

See Also

The Palm Keyframe Controls

The Digit Pose Manager

The Limb Keyframe Controls

The Foot Pivot System

Retrieved from "CAT 2.4 CHM help file (local)"


New Features in Animation System

F/IK

F/IK is what we have called CAT's rig manipulation system. The precept behind it is simple: you should be able to just push your rig into position, in the viewport, whether you're linkages are driven by inverse kinematics or forward kinematics.

F/IK is actually a combination of different features and systems that combine to give you the ultimate combination of intuitive manipulation and complete flexibility and scalability.

The two main elements of the system are CAT's new FK driven IK and Effect Hierarchy.

Changes in Layer Manager

The Layer Manager, the heart of CAT's NLA system, has had some important UI changes. Below I will introduce the new CAT2 interface.

CAT2 Layer Manager

Animation Mode drop down

This drop down menu has three options: Setup Mode, Animation Mode, and Stretchy Bones Mode.

Setup Mode: Puts the rig back into Setup Mode, for rig editing and skinning.

Animation Mode: Typical keyframe animation is done in this mode.

Stretchy Bones Mode: When in the this mode the bones you can animate the lengths of bones simply by dragging the rig elements, similarly to Setup Mode.

Rig Colour Mode drop down

This drop down menu has two options: Rig Colour Mode and Colour by Layer Mode.

Rig Colour Mode: Displays the rig with the default object colours.

Colour by Layer Mode: Colours the rig according to the colour of the layer that is affecting it at any given point in time.

Ranges View: Use ranges view to edit the timing of individual animation layers, similarly to using a video editing tool. This feature is core to CAT's NLA system.

Add Animation Layer drop down

Delete Animation Layer: Deletes selected layer.

Add Absolute Layer: Creates a new absolute layer to keyframe into.

Add Local Adjustment Layer: Creates an adjustment layer to offset/tweak animation below it in the layer stack. The offsets are calculated in the space of the rig elements. This is the same as a Relative Layer in CAT 1.

Add World Adjustment Layer: Creates a Relative layer to offset/tweak animation below it in the layer stack. The offsets are calculated in world space.

Add CATMotion Layer: Adds a CATMotion layer. In CAT1 there was only one CATMotion Layer in the Layer Manager and it was always present. In CAT2 you can have as many CATMotion layers as you wish - or none at all.

Copy Animation Layer: Copies the selected animation layer.

Paste Animation Layer: Layers can now be copied or instanced, in the animation stack or between characters.

Collapse Layer Stack: Collapses all animation layers into a single animation layer.

Name: Edit the name of the selected animation layer.

Layer Colour: Allows you to edit the colour of the selected animation layer. Used when the rig is using Rig Colouring Mode.

Display Layer Transform Gizmo: The Layer Transform Gizmo is used to transform the whole animation layer. The Layer Transform Gizmo can now be animated.

Dump current pose: Creates a snapshot of the current pose into the active layer.

Move animation layer down the stack: Remember that the visual bottom of the stack is actually the top!

Move animation layer up the stack

Ignore: When checked the selected layer is greyed out and ignored. This can also be achieved by double clicking on a layer.

Solo: When checked all layers other than the current layer will be ignored.

Global Weight: Opens up the curve editor to allow you to edit global layer weights (In CAT1 this used to be up by the ranges editor with a dumbbell symbol on it). Animating layer weights is used when blending between animations.

Local Weight: Opens up the curve editor to allow you to edit the local weights for the selected rig element. This is used when feathering layer weights.

Time Warp: Opens up the curve editor to allow you to edit the time warp graph. This allows you to retime the animation with a single curve.

Layer Manipulations now undoable

Layer manipulations such as adding/removing/renaming/and moving layers up and down the stack are all now undoable.

Copy/Paste animation layer

You can now copy and paste animation layers, including between rigs. It is also possible to instance layers which means that different rigs can reference the same animation layer. You can still individually time warp and transform layers.

Multiple CATMotion Layers

You can now have multiple CATMotion layers for more flexible workflow while blending between CATMotion sequences and keyframe animations.

Time Warp Curves

Time Warp curves enable you to control the velocity of an entire animation layer with a single spline curve. Matrix bullet time effects were never easier! The Time Warp curve can be found if you select the CATParent and open it up in the Curve Editor.

Curve Editor showing Time Warp curve

The Layer Ranges Editor now supports Out-of -Range looping options

All you have to do to loop animation layers is select the layer you wish to loop and select the Out-of-Ranges button. Use as you normally would with a typical Max controller.

Extended control over "Sub-Ranges"

You can now edit the ranges for animation on the Layer Weight, Time Warp and the Layer Transform gizmo, separately from the rest of the animation.

CAT2 Ranges View showing extended "sub-range" editing possibilities

Decoupling Animation Layer Ranges

Max has a well hidden function called Position Ranges. What it does is decouple the animation range from the actual animation keyframes. Normally all controllers will loop according to the times of your first and last keyframes. This is very useful if you wish to loop over a longer or shorter period than your animation. Normally in Max you would have to edit the changes for each leaf of a controller individually. For example, to the X, Y and Z component of a Euler Rotation controller. Doing this for a whole character is pretty time consuming.

In CAT you can use the same tool to control an entire animation layer, which is much more practical!

To use Position Ranges on an animation layer:

1. Right Click on the toolbar area of the Curve Editor.

2. From the menu select Show Toolbars/Ranges: Dope Sheet

Ranges: Dope Sheet toolbar

3. Select the Position Ranges button.

4. Edit the Layer Range as usual.

Layer Transform Nodes are now animatable

In CAT1 the Layer Transform Node (which used to look like a ghost) was not animatable. This has been rectified in CAT2. Keys for the animation are can be found in the Transform branch, on the CATParent under the selected layer in the Curve Editor.

Animation keys for the Layer Transform Node in the Curve Editor

Animatable Scale

Animated scales are now handled by CAT's NLA system. This applies whether you are in Stretchy Bones Mode or Animation Mode. Scales will not skew the rig elements and will not break any IK setups.

Scaling is hierarchical in that scales to a parent rig element will be inherited by its children, as is normal in Max. This can be controlled by editing the Inherit switches in the Hierarchy/Link Info Panel.

Tip:

Scales cannot be applied directly to procedural spines, but scale changes to a parent hub will be piped into a spine (e.g. from the pelvis into the spine).

Stretchy Bones

The new stretchy bones feature allows fast manipulation of the new scale system. If you have set up rigs in CAT 1.4 you will already be familiar with the principles of this; simply select a bone and transform it. The bones on either side of the join resize to follow the mouse.

In CAT2 you now have the same functionality available for animation. This feature is especially useful for cartoony, "stretch and squash" animation, but I'm sure you'll find a plethora of other uses for it!

Retargeting

CAT now has a new system called Retargeting, which is available on all limbs. This system is an advance from the old KA Lifting system used in CAT1 for the same purpose.

The idea behind retargeting is that it maintains the IK solution and the angles of the limbs, moving and rotating the hub. This is in contrast to a normal IK solution that leaves the root object (hub) in place and extends out the limb bones. If the IK target is too far away the limb bones will snap straight. Using retargeting the IK solution can go completely straight without snapping.

We also use retargeting for retargeting motion capture data.

Pin Bone

In CAT 1.4 you were able to pin the ribcage (for example) with the Pin Tip Hub feature. In CAT2 this feature remains the same, but the interface for it has been moved to Hierarchy/Link Info panel and been renamed to Pin Bone.

Better control over pelvis/ribcage motion in CATMotion

Apart from the fact that you can now have multiple CATMotion layers in the Layer Manager the largest change to CATMotion is the way hubs (pelvises, ribcages etc) are controlled. In CAT1 the hubs were controlled by a combination of different graphs (the different leg graphs and the curve for the hub itself). The downside of this technique was that it wasn't always obvious how the hub would move. In CAT2 this problem has been solved by removing input from the legs. Now the hub moves according to its curve - basta!

NOTE!

While we believe this change offers a big improvement for CATMotion, and it has one important side effect - CAT1 CATMotion presets will load, but their animations will require "repairing". The original hub animations will be lost, and will need to be recreated. Existing scenes will still be fine.

Foot Pivot System

CAT2 has a new foot pivot system. For the user it is very simple: simply position the pivot (represented as point helper) and pivot the foot. The pivot is animatable.

New World Adjustment Layers

In CAT1 there was only one type of adjustment layer (previously called a relative layer). You can now assign world adjustment layers. These allow you to tweak existing animation in world space, rather than local space. This is mainly for offsetting IK positions, such as the foot placement from imported mocap data.

Big scenes more responsive

CAT2 has had major optimizations made which mean that CATRigs now use less CPU overhead than ever. While animating in complex scenes you will notice the difference!

Limb IK Position Slider

Traditionally the IK target sits at the end of the limb. But sometimes you don't want this. What about crawling characters? Then you need the IK target positioned at the knee. In CAT2 you can now animate the IK target up and down the limb as you wish, with a function called Limb IK Pos.

New CATBone Hierarchy rollout

In the hierarchy/Link Info panel there is now a new rollout called CATBone Hierarchy. This holds a number of special locks and other settings, similar in principle to those found in the Max Locks and Inherit rollouts found in the same panel.

Hub Hierarchy rollout

This rollout is for hubs only and is also found in the Hierarchy/Link Info panel.

Allow IK Rotations controls whether the hub will rotate to accommodate the retargeting happening when both child limbs have retargeting on.

Pin Bone when switched the hub will remain static when its parent hub is being transformed. This is the same as the CAT 1.4 Pin Tip Hub feature.

Layer Ghosting

Allows ghosting of animation layers to help layout the overall sequence.

Walk on Spot for Keyframe Animation

Removes displacement from keyframed animation. Especially useful for game animators!

See Also

New Features in Rig Setup

New Features in Motion Data Saving and Loading

New Features in Scripting

Retrieved from "CAT 2.4 CHM help file (local)"


New Features in Rig Setup

All Bones can now have Custom Geometry

Turning bones into more complex meshes can be useful for creating proxy meshes, that better represent the character. They can also help with skinning. Another possibility is to create handles to help get at the bones with the skin present without having to freeze or hide the skin.

All bones can now have custom geometry. This means you can now edit your CAT bones with any Max modifier (e.g. an Edit Mesh modifier). When you have completed your changes, you can collapse the Modifier Stack and the changes will be baked into the rig. The changes will be saved when you save the CATRig preset.

Changes can be turned off with the Use Custom Mesh check box in the selected bone's Setup rollout in the Modify Panel.

Editing Bone Pivot Positions

It has been our philosophy from the onset to integrate CAT into Max as far as possible. Part of this involves not providing tools when Max already has them to avoid duplication and cluttered UIs.

With this in mind the Pivot Pos Y and Z sliders provided in CAT1 for positioning hubs have been removed. Instead we recommend simply applying a Max XForm controller, which will allow you to position ANY bone as required. When you have finished editing simply collapse the Modifier Stack and the changes will be baked into the bone.

Extra Bones

All CATRig bones can now have an unlimited number of Extra Bones added. Extra Bones are important because they enable you to add bones onto the rig that will be included in CAT's NLA system. Examples of uses for Extra Bones include facial bones, weapon bones, and stomach bones (for secondary dynamics on more heavily built characters).

Extra bones are created by selecting any CATRig element and clicking on the Add Bone button. A bone will be created at the origin of the rig element. By default the created bone is linked to the rig element it was created from. Once created it can be moved, edited like any other Max geometry, and relinked to other rig elements as required.

One thing to keep in mind is that a rig can be made up almost ENTIRELY of extra bones. This is particularly interesting in the case of facial rigs, where facial blending needs to be handled separately from the animation of the character's skeleton.

Facial Rigs

To create a facial rig from extra bones, create a (None) CATRig preset and then click on the Create Pelvis button found in the Modifier Panel, with the created CATParent selected.

Select the pelvis and click Add Bone to create extra bones. Move the bones into position, and edit as required.

Tip:

You will be able to save time by setting up one side of the face first and then Paste Mirroring (buttons found in the Modify panel on the selected bone) to position the already created opposing bones correctly. Settings are mirrored relative to the parent object.

The root hub (pelvis) is then linked to the head of the character CATRig.

The facial rig has its own NLA system. Set up phoneme shapes on individual layers and blend between them in the same way you would in Morpher. Talking sequences and expressions can then saved as CATClips for reuse, including on different facial rigs. Of course if the new target face has different proportions the clip will be retargeted to fit.

Deleting CATRigs is now Undoable

Deleting CATRigs, or rig elements is now undoable. In fact nearly every action in CAT2 is now undoable!

Characters are now Cloneable

SHIFT/Drag to clone the selected CATRig, just like any other Max object/hierarchy.

New IK System

CAT's IK system is now more flexible and interactive than ever. The aim is to allow you to manipulate the rig, whether in IK or FK, directly and intuitively. The changes affect both Setup Mode and the way the rig behaves during animation.

In Setup Mode the main difference from a user's perspective, is that the Bend Ratio sliders are missing from the limbs. The bend ratios are now taken from the FK rotations. Basically all you have to do is rotate the limb into the configuration you require to setup the IK relaxed position. With the new IK system there is also no limit on bone rotations. Bowed legs etc are now completely possible.

All bones now have full PRS (Position, Rotation, Scale) controller stacks

Having Max PRS controllers on every bone means that it in CAT2 it is now possible to detach bones. One example of where this would be used is blowing off limbs.

To stop you ripping your rig apart during normal animation each rig element has its own lock system held in the CATBone Hierarchy rollout, found in the Hierarchy/Link Info panel.

Palms and collarbones now optional on limbs

Palms and Collarbones are now optional on all limbs. They are added and removed with the Collarbone and Palm or Ankle check boxes found on selected limb, in the Modify Panel.

Changes to the CATParent UI

In CAT2 the CATParent has less controls. Specifically the Show Rig, Hide Rig, Visibility, Renderable and Freeze controls have all been removed. This is because the Max Layer Manager is a much more efficient way of achieving the same functionality; we would encourage you to use it instead (if you aren't already).

X Axis Aligned Rigs

In CAT1 all rigs had the same bone orientation: Positive Y forwards, positive Z up and X right. This could be defined as a Z aligned system because the bones are all aligned down the Z axis.

What we didn't take into account when we set it up this way is that every other rigging system, even Max and Maya bones is X aligned. This has caused problems with various game exporters.

In CAT2 we have changed this. By default, rigs created in CAT2 are now X aligned with Positive Y forwards, positive X up and positive Z left.

Independent size settings for Spine bones

Now spine bones can be individually sized.

One Bone Limbs

Limbs can now have one bone. This applies to spines and tails as well.

More Flexible Rig Naming

The naming conventions have been changed for CAT2. It is now possible to individually name spine bones, palms, ankles, digit bones, tail bones and limb bones.

FK Spines

In CAT2 you now have the option of creating a FK spine. On a FK spine individual spine bones have their own PRS controllers, which means that you can keyframe individual spine links. Note that FK spines will not work with CATMotion or CAT's retargeting system.

See Also

New Features in Animation System

New Features in Motion Data Saving and Loading

New Features in Scripting

Retrieved from "CAT 2.4 CHM help file (local)"


Editing a CATRig Mesh

Turning bones into more complex meshes can be useful for creating proxy meshes that better represent the character. They can also help with skinning. Another possibility is to create handles to help get at the bones with the skin present without having to freeze or hide the skin.

All bones can now have custom geometry. This means you can now edit your CAT bones with any Max modifier (e.g. an Edit Mesh modifier). When you have completed your changes, you can collapse the Modifier Stack and the changes will be baked into the rig. The changes will be saved when you save the CATRig preset.

Tip:

If you at some point you wish to just display a bone in its original form (a box), then you can uncheck the Use Custom Mesh check box, in the Bone Parameters rollout of the selected bone, displayed in the Modify Panel.

The Game Character CATRig preset

See also:

Skinning a CATRig

Retrieved from "CAT 2.4 CHM help file (local)"


Editing the CATParent

CATRig Parameters Rollout

Character Setup rollout

Name: Edit the name field to change the name of the whole rig.

CATUnits Ratio: The ratio between CATUnits and the current units set in 3ds max. Use this to resize the rig.

Track Display

These radio buttons control which keyframes will be displayed in the 3ds Max track bar underneath the time slider.

Active Layer: Only keyframes on the active animation layer are displayed in the track bar in 3ds Max.

Contributing Layers: Only keyframes that are contributing to the solution are displayed in the track bar.

All Layers: Keyframes for all animation layers are displayed in the track bar.

Bone Length Axis

These switches control the CATRig's coordinate system.

X Axis: All CATRig bones will be aligned along the X axis (default on new rigs).

Z Axis: All CATRig bones will be aligned along the Z axis.

Note:

This change will not be significant for new users (except for those who are no longer having problem with their game exporter), but it will have a couple of implications for users currently in production:

  1. Animations saved with CAT's Clip System will not load correctly.

  2. CATMotion presets will load OK, except that any offsets will now be offset in the wrong direction.

Basically, if you are in the middle of a production or have large libraries of CATClips we would recommend that you continue to use Z aligned rigs. All new rigs default to X aligned, but can be switched back to Z aligned.

Existing scenes will not be affected so you don't have to worry about loading old scenes.

CATRig Presets Rollout

The CATRig Presets list box

The CATRigs list box displays a list of existing CATRig presets.

Note:

Once a rig has been created the presets are grayed out as you cannot load a preset on top of an existing rig.

To save a new CATRig preset:

  1. Click Save Rig.

  2. Navigate to the desired folder.

  3. Enter the Rig name.

  4. Click Save.

See also

Introducing the CATParent

Creating a CATRig

Retrieved from "CAT 2.4 CHM help file (local)"


Editing Digits

Digit Setup

The Digit Setup rollout can be accessed by selecting the digit in the Digit list box on the palm or by selecting the digit in the viewport.

Digit Name: Edit this field to change the name of the digit.

Copy digit settings.

Paste digit settings.

Paste Mirror digit settings.

Num Bones: The number of bones the finger has. This ranges from 1 to 20.

Tip:

Each new bone created will default to the same dimensions as the bone at the end of the digit.

Width: The width of the digit.

Depth: The depth of the digit.

Length: The length of the selected digit bone.

Tip:

The bone length parameter can only be accessed by selecting the bone in the viewport.

Curl Weight: This value controls how much the DigitCurl values in CATMotion affect the digit. A value of 1.0 means that CATMotion has 100% effect. A value of 0.0 would turn CATMotion off for the selected digit. A value of -0.5 would mean that DigitCurl would have half effect in the opposite direction.

Digit Bone Parameters

This rollout has the settings for the selected digit bone.

Name: The name of the bone.

Use Custom Mesh: This is used for when you have baked your bone mesh changes into your bone. When checked the bone will show as the edited mesh. When unchecked you will just see the underlying box (unedited bone).

Length: The length of the bone.

Curl Weight: This controls how CATMotion DigitCurl will affect the individual bone.

Creates an Extra Bone, linked to the selected digit.

See also

Editing Palms

The Digit Pose Manager

Retrieved from "CAT 2.4 CHM help file (local)"


Editing Spines

Object Parameters

Bone Setup rollout

Name: Name of the selected bone.

Copy bone settings.

Paste bone settings.

Paste Mirror bone settings.

Use Custom Mesh: This is used for when you have baked your bone mesh changes into your bone. When checked the bone will show as the edited mesh. When unchecked you will just see the underlying box (unedited bone).

X: The size of the bone in the X dimension, measured in CATUnits.

Y: The size of the bone in the Y dimension, measured in CATUnits.

Z: The size of the bone in the Z dimension, measured in CATUnits.

Creates an Extra Bone, linked to the selected bone.

Tip:

As of CAT2 it is now possible to individually resize CAT spine bones!

Spine Projection Vector

The Spine Projection vector gives the artist more control over the procedural spine. Previously all spines would animate assuming the spine was going along the Hubs Up Axis(Z, or X depending on the Length Axis setting on the CATParent). In some cases, you may need a spine that goes downwards, or sideways. The Spine Projection vector is useful for this.

If you select any spine bone on a Procedural spine, and go to the Motion Panel, you will see a blue line representing the Spine Projection Vector.

To edit the direction of a procedural spine:

  1. Select the spine

  2. Click sub-object mode button. The Spine Projection vector will become selected and you can now re-orient your spine.

You will get better results from your spine if you ensure the blue line runs close to default curvature of your spine.

Tip:

When creating spines that default to a curve we would recommend that you edit the individual spine bones into position, leaving the hubs (ribcage and pelvis) aligned up and down, as opposed to rotating the hubs to create the curve.

Spine Parameters

The Spine Setup rollout

Spine Name: Edit the name of the spine in the field box.

Num Links: This spinner controls the number of spine bones. It ranges between 1 and 60.

Length: The length of the spine in CATUnits.

Size: The width and depth of the spine links.

Procedural: When this is selected the spine links do not have their own PRS controllers assigned; instead the spine interpolates between its hubs. This has the advantage that there are far fewer keyframes to manage and allows for greater flexibility when loading motion clips between characters with different setups. CAT's retargeting system and CATMotion also require a procedural spine to work. By default spines are procedural.

FK: When a FK spine is selected each spine bone has its own PRS controller, which can be manipulated individually. It is still possible to rotate the spine as with a procedural spine by transforming the hubs.

Note:

If you choose to use a FK spine be aware that you will not be able to use CATMotion or retargeting! We would normally recommend using the procedural spine.

Relative: Means the hub will rotate relative to the parent hub, e.g. the ribcage will move relative to the pelvis. Use this for hubs on upright spines like humans.

Absolute: Means the hub will rotate relative to itself. Use this for ribcages on horizontal spines such as on quadrupeds.

Spine Rotation Weight

This graph controls how much the spine links rotate relative to each other. Put another way, it controls how the rotation between the hubs is distributed along the spine.

The spline is edited by adjusting the tangent length spinners and the value spinners at the bottom of the graph.

Tangent: The Tangent spinners control the curve.

Value: The Value spinners controls the start and end values of the rotation weights.

To rotate the spine more at the top:

This has this effect on a human rig:

Tip:

All rotations, including twisting are effected by the graph.

The effect of the same graph on a twisted spine:

As compared to the default settings:

Tip:

The spine colour blends from the colour of the pelvis to the colour of the ribcage. The blend of the colour reflects the falloff on the Spine Rotation Weight graph.

See also

Animating Spines

Retrieved from "CAT 2.4 CHM help file (local)"


Editing your Rig Interactively in the Viewport

The quickest and easiest way to edit your rig is in the viewport. Simply edit the proportions of the rig by dragging the elements around.

In the case of spines the spine length is edited by simply moving the child hub. The spine stretches to fit.

With limbs it is much the same: move the child element to edit the length and rotation of the element above it in the hierarchy.

Element dimensions can be edited with the 3ds Max's scale function (you will usually want to use non-uniform scale for this). When in Setup Mode the rig elements are not scaled, but rather resized.

Using the methods described above it will be possible to set up the majority of your rig simply by placing the joints correctly into your model, which is much faster then the alternative of incrementally editing the length and orientation of each element in turn.

To adjust arm dimensions using Stretchy Bones:

  1. Select the arm you wish to edit

  2. Select the bone below the joint you wish to edit (in the case, the forearm).

  3. Move the arm joint as required.

The arm bones resize to suit.

See also

Editing CATRig

Editing Hubs

Editing Spines

Editing Limbs

Editing Tails

Editing Extra Bones

Retrieved from "CAT 2.4 CHM help file (local)"


CAT's coordinate system

In CAT1, all rigs had the same bone orientation: Positive Y forwards, positive Z up and X right. This could be defined as a Z aligned system because the bones are all aligned down the Z axis.

What we didn't take into account when we set it up this way is that every other rigging system, even Max and Maya bones, is X aligned. This has caused problems with various game exporters which are hard coded to X aligned rigs.

In CAT2 we have changed this. By default, rigs created in CAT2 are now X aligned with Positive Y forwards, positive X up and positive Z left.

This change will not be significant for new users (except for those who are no longer having problem with their game exporter), but it will have a couple of implications for users currently in production:

  1. Animations created on Z aligned rigs (all CAT1 files) and saved as CLP files will not load correctly onto X aligned rigs.

  2. CATMotion presets will load OK, except that any offsets will now be offset in the wrong direction.

Note:

If you are in the middle of a production, or have large libraries of CATClips we would recommend that you continue to use Z aligned rigs. All new rigs default to X aligned, but can be switched back to being Z aligned.

Existing scenes will not be affected so you don't have to worry about loading old scenes.

To change a CATRig to be Z aligned:

  1. Select the CATParent.

  2. Go to the Modify panel.

  3. Go to the CATRig Setup rollout.

  4. Select the Z Axis radio button.

Nothing obvious will happen, but if you select an element of your rig you will notice that the bones are now aligned along the Z axis.

See also

Introduction to Motion File Saving and Loading

Retrieved from "CAT 2.4 CHM help file (local)"


Introducing CATRig Elements

Any CATRig is made up of a combination of at least some of the following elements: Hubs, Spines, Tails, Limbs, Palms, Digits, and Extra Bones.

HubGroups are a special group that are not elements in their own right, but are rather a subset of the rig.

Image courtesy of Digital Pictures Iloura

See also

Creating a CATRig

CATRig Structure

Introducing Limb Bones

Introducing limb IK targets

Retrieved from "CAT 2.4 CHM help file (local)"


Introducing the CATParent

Every CATRig has one CATParent. The CATParent, which is the toolkit symbol seen under each rig as it is created, can be considered the character node of the rig.

All of the elements of the rig are associated with the CATParent. It holds basic information about the whole rig, including its name, size and other basic data.

It also holds the Rig Preset Manager, which allows you to load and save CATRig presets.

The rig is not linked to the CATParent but can be transformed by it when in Setup Mode. Scale transforms are inherited by the whole rig from the CATParent in any mode.

The CATParent

See Also

Creating a CATRig

CATRig Structure

Introducing Hubs

Introducing Spines

Introducing Limbs

Introducing Tails

Retrieved from "CAT 2.4 CHM help file (local)"


Introducing Hubs

A hub could be a pelvis, ribcage, thorax or head depending on how it is used. Spines, arms, legs, tails and extra bones can be created off it. CAT does not limit how many of these elements can be created off one hub.

The first hub created is the root object for the rig. In an upright, two-legged creature such as a human or a four-legged creature such as a horse this would be the pelvis.

By default, in a hub the X vector is always along the direction of the attached spine. This means that in a 4 legged creature it points along the horizontal. For more on this read CAT's coordinate system.

The Pelvis hub on a four-legged rig

See Also

Editing Hubs

Retrieved from "CAT 2.4 CHM help file (local)"


Introducing Limb Bones

All limbs are made up of limb bones. Limb bones are special because they can be segmented to allow for twisting.

A limb can be made up from between 1 and 20 limb bones and bones between 1 and 20 segments. Bone segment twist weights are spline controlled so you have full control over where the bone twists most.

See also

Introducing Limbs

Editing Limb Bones

The Limb Keyframe Controls

CAT's IK System

Retrieved from "CAT 2.4 CHM help file (local)"


Introducing Limbs

Limbs are used for arms, legs, wings etc. There are two differences between a leg and an arm. One is that legs are assigned FootPlatforms, which include CAT's foot pivot system. The other is that arms and legs are treated quite differently by CATMotion.

A limb can be made up of up to 20 bones, and each bone can have up to 20 segments. All limbs can have collarbones or palms as required.

The limb bones can be set up in any configuration. IK setup involves simply rotating the bones in Setup Mode.

The bone segments only rotate around the center of their bone. They exist to allow for twisting forearms etc. Their relative rotations are controlled with the Bone Twist Weight graph.

The Palm holds the controls for the arm. It has the controls for blending the arm between IK and FK. It also allows for the creation of an IK target for the arm, keying of all the rotations on a limb, and holds the master controls for the digits (fingers).

CAT supports seamless blending from IK to FK and back again.

Each palm can have up to 100 digits and each digit up to 20 bones. Digits are set up with FK controls only. Digit controls include a weighable Digit Pose Manager and powerful Digit Modifiers for manipulating groups of digits.

By default the local X axis is aligned to the length of the bone.

The front leg of the Panther rig.

See Also

Editing Limbs

Editing Collarbones

Editing Limb Bones

Editing Palms

Editing Digits

Retrieved from "CAT 2.4 CHM help file (local)"


Introducing Palms and Digits

Limbs can have palms. Palms are used for palms on arms and ankles on legs, etc.

When in IK Mode the palm can be aligned to the target or to the previous bone (e.g. forearm), as required.

Each palm can have up to 100 digits and each digit up to 20 bones. Digits do not have IK and can only be transformed in FK. Digit controls include a Digit Pose Manager and powerful digit modifiers for manipulating groups of digits.

By default, both palms and digits are aligned to the X axis.

See also

Editing Palms

Editing Digits

The Palm Keyframe Controls

The Digit Pose Manager

Retrieved from "CAT 2.4 CHM help file (local)"


Introducing Spines

Spines are used to connect hubs. They fulfil the functions of spines and necks. A spine can have between 2 and 60 spine segments.

By default spine transforms are not edited directly when animating, but are instead achieved by transforming the adjoining hubs. The Spine Rotation Weight graph controls how rotations are proportionally spread along the spine.

In CAT2 you now have the option of creating a FK spine. On a FK spine individual spine bones can be transformed and hold their own keyframes. But be warned! FK Spines will not work with CATMotion and CAT's retargeting system. They also give you more keyframes to manage.

Another new feature of CAT2 is that spine bones can now be sized independently.

By default a spine's length is aligned along the X axis. For more on this read CAT's coordinate system.

All spines have a hub at both ends.

The spine on a four-legged rig (the mesh has been edited)

See Also

Editing Spines

Editing Hubs

Retrieved from "CAT 2.4 CHM help file (local)"


Cloning a CATRig

In CAT2 it is now possible to clone CATRigs in the same way as any other Max object. Simply select any part of the CATRig, hold down SHIFT and move the rig.

Note:

It is only possible to copy a rig with this method. Instancing and referencing are not available.

Retrieved from "CAT 2.4 CHM help file (local)"


Creating a CATRig

A CATRig can take any form you require. It can have as many spines, heads, pelvises, limbs, fingers, toes and tails as you could ever want. In CAT2 you can now add extra bones too.

CAT comes with a library of rigs of everything from humans to horses, insects and robots.

CATRigs can be created from scratch, but usually it is easiest to load in the rig closest to your requirements and edit from there.

Once you are happy with your creation you can save it as a new preset for reuse later on. This approach has been used right across CAT. Load in the preset closest to your requirements, edit it to suit your purposes and then save the result out as a new preset.

Using CAT you can create the rig you need, in very little time. CATRigs come with their own inbuilt IK system, as well as easy to manipulate spines and tails. Advanced digit controls make it easy to position fingers and toes. By default legs are created in IK; arms in FK. All limb bones can be segmented for twisting bones. Segment twist weights are spline controlled.

Even in Setup Mode the rig is set up so that it can be manipulated intuitively. The arms are in FK and the legs in IK. The pelvis, ribcage and head can all be moved and rotated as expected.

During setup CATRigs can be resized without breaking IK setup etc; perfect for merging files. Resizing is deactivated once an animation layer is created to prevent problems with existing animation.

Tip:

CATRigs can be created from scratch, but usually it is easiest to load in the rig closest to your requirements and edit from there.

To load an existing CATRig Preset:

  1. Go to the Create panel.

  2. Click Helpers.

  3. Choose CATObjects>CATParent.

  4. Select a preset from the list.

  5. Click in a viewport.

The selected rig will appear in the viewport.

StandardHuman CATRig Preset

In addition to clicking in a viewport you may also drag. When you drag to create a CATRig, the length of the drag will be approximately the same as the CATRig’s initial height. The initial width and depth will remain proportional to the height.

In the Create panel the Character Setup rollout shows the CATRig's basic parameters.

Character Setup rollout

During creation you can change the parameters. Otherwise, like all 3ds Max objects you can edit the creation parameters in the future by selecting the CATParent object and going to the Modify panel.

Tip:

CATUnits Scale and Bone Length Axis cannot be changed if an animation layer is present.

To create a CATRig from scratch:

  1. Go to the Create panel.

  2. Click Helpers.

  3. Choose CATObjects>CATParent.

  4. Don’t select a rig from the list. Instead just click/drag in the viewport.

    A CATParent is created.

    Tip:

    If you already have a preset selected in the list box, select (None).

  5. With the CATParent selected go to the Modify Panel.

  6. Click Create Pelvis down the bottom of the Rigs rollout.

    A pelvis will appear in the viewport at the default size.

  7. Select the pelvis and go to the Modify panel.

Hub Setup rollout

In the Hub Parameters rollout you can add Legs, arms spines, tails and extra bones as required.

You will find that this system allows you to quickly create any rig structure you want.

See Also

What is a CATRig?

CATRig Structure

CAT's coordinate system

Naming a CATRig

Removing Elements of a CATRig

Cloning a CATRig

Skinning a CATRig

Introducing CATRig Elements

Introducing the CATParent

Introducing Hubs

Introducing Spines

Introducing Limbs

Introducing Tails

Saving CATRig Presets

Retrieved from "CAT 2.4 CHM help file (local)"


CATRig Structure

CATRig is a truly flexible animation rig. Using CATRig you can create a human, a horse, a bug, a dragon or a centipede. The rig is made up of a finite number of simple elements that you can put together to suit you requirements.

There are no limits as to how many of the different elements can be used in a rig, though there are basic rules regarding how they are plugged together. Each element has its own set of user definable characteristics that dictate its form and movement parameters. All aspects of the rig can be edited parametrically by entering values, or interactively in the viewport.

The elements are called: The CATParent, hubs, spines, limbs, palms, digits, tails and extra bones. Each element may also include a number of sub-elements.

A CATRig is created on a CATParent. The CATParent is the toolkit symbol found at the base of the rig on creation. It can be considered the character node for the rig. The CATParent holds the name, size and other basic data of the rig.

Each CATRig has its own unit system, called CATUnits. CATUnits are a ratio of the current Max Unit size. The size of CATUnits relative to the size of Max Unit size is controlled with CATUnits Ratio, found on the CATParent. For example, a CATUnits Ratio of 0.5 means that one CATUnit is equal to half a Max unit, as selected in the Units Setup menu in Max.

The advantage of CATUnits is that if you edit the size of the rig, all CATMotion will stay the same (proportional to the rig). It also allows you to edit the size of the rig without affecting your IK setup etc.

StandardHuman CATRig standing on its CATParent

The hierarchy of a CATRig is much the same as any other animation rig in 3ds Max. All of the elements branch away from the pelvis or root node. The CATParent is not linked to the rest of the rig.

A section of the hierarchy of the StandardHuman Rig

In the image above you can see that every element of the rig is allocated the name of the rig, plus its unique identifier. The object StandardHuman is the CATParent. As you can see nothing is linked to it. The other object in the hierarchy that remains separate from the tree is StandardHumanLLegPlatform.

Every leg has a FootPlatform. FootPlatforms are special elements, that serve as the IK targets for the legs, which is why they are not part of the hierarchy.

See also

Removing Elements of the CATRig

Retrieved from "CAT 2.4 CHM help file (local)"


Naming the CATRig

CATRigs are created with their allocated preset name. If you want to have more than one of the same CATRig preset in a scene it is a good idea to give it a unique name.

To change a CATRig name:

The CATParent is renamed and the entire CATRig hierarchy inherits the new name.

Retrieved from "CAT 2.4 CHM help file (local)"


Removing Elements of the CATRig

Elements are removed by deleting. Deleting an element will delete it, and its children.

To delete the whole CATRig:

Or

To remove an arm:

To remove the upper body:

To remove a digit:

Note:

Individual rig elements can only be deleted in Setup Mode. When in Animation Mode if you select any part of the rig the whole rig will be deleted.

Retrieved from "CAT 2.4 CHM help file (local)"


Skinning the Rig

A CATRig is skinned with the 3ds Max Skin modifier or any other skinning system supported by 3ds Max.

Skinning is a complex art in itself and the subtleties of it are not within the scope of this document, however a few tips for tuning a CATRig to your skin are provided below.

To skin a CATRig:

  1. Select the skin.

  2. Apply the Skin modifier.

  3. Select the CATRig bones as normal

Fitting the bones to the CATRig

While all CAT bones have parametrically editable dimensions, sometimes you will want to edit the shape of the bone. To do this we recommend using standard 3ds max Object Modifiers such as Taper, Edit Mesh and the FFD modifiers.

To Edit a CAT Bone using the FFD 2x2x2 modifier:

  1. Select the bone segments.

  2. Apply the FFD 2x2x2 modifier.

  3. Align the FFD modifier to the bone by transforming the lattice.

  4. Edit the control points on the FFD modifier to edit the bone.

The bone is now modified. It will continue to work as a normal CAT bone, including bone segment twisting.

Once you have finished editing your rig you can collapse the modifier stack, thereby baking the edit into the bone. The changes will saved in your CATRig preset.

Tip:

Sometimes additional bones will be desirable e.g. for bellies or weapons. For this create extra bones. These bones are also saved as part of the rig.

Retrieved from "CAT 2.4 CHM help file (local)"


What is a CATRig?

The CATRig is the structure that the CAT character animation system sits on. In essence it is a highly sophisticated custom character rig that has been designed so that you can create the character setup you want without having to code yourself. The fact that it is mostly written in C++ rather than script means that it is very fast. Using C++ also gives us much more flexibility when creating the system so we can do much more than a typical technical director working with MaxScript.

To make the system as flexible as possible we have done our best to keep the system as generic as we can. This is immediately obvious with CAT's naming conventions. A spine could also be a neck. Instead of pelvises and ribcages, CAT has hubs. You can read more about specific CATRig elements and how they plug together in CATRig Structure.

Different rig elements are added simply by clicking the appropriate button.

All rig elements have different properties built in. For example all limbs have their own, sophisticated IK system built right in; spines have their own characteristics, etc.

Each rig also has its own non-linear animation system, procedural walkcycle system, and clip/pose system. In addition, CAT comes with a number of utilities to manage things like motion data mapping and ragdoll (physics) setup.

Robot courtesy of Roberto Fernandez

See also

CATRig Structure

CAT's coordinate system

Creating a CATRig

Naming the CATRig

Removing Elements of the CATRig

Cloning a CATRig

Skinning a CATRig

Retrieved from "CAT 2.4 CHM help file (local)"


How To Use This Manual

I find that often the most important thing at the beginning is to even know what is possible. The introduction is a quick overview of what is possible with CAT.

From there, go to How Do I...?. It is a kind of 'quick find' menu, broken down into similar categories to the introduction, that should enable you to find out how to do specific functions without too much searching around.

The How Do I...? lists are not exhaustive. If you have anything you want added to the list, please let us know and we'll put it into future versions. In the end these lists should get really long!

If you are already familiar with CAT1 then I strongly recommend that you read What is different in CAT2? It will enable you to dive straight into the new and exciting stuff.

The tutorials section has been removed in favour of video tutorials on our website. Please go to http://www.catoolkit.com/support/videos.asp. You may also want to check out our Tips and Tricks section.

Image courtesy of Digital Pictures Iloura

See also

Introduction

What is different in CAT2?

How do I...?

Retrieved from "CAT 2.4 CHM help file (local)"


Introduction

CAT is a complete character system for 3ds Max. CAT2 has all the flexibility of a custom rig, but doesn't require you to script. Of course, the system is completely open to scripting if desired.

We originally designed CAT because we needed a character system that was flexible enough and powerful enough to meet our own requirements in day to day production. Since the release of CAT1.0 we have received copious quantities of valuable feedback that has enabled us to keep tuning CAT so that it meets the needs of all its user base.

Here are 6 key areas of your character animation pipeline addressed by CAT:

1. Rig Creation

A CATRig is fundamentally a hugely sophisticated custom rig that is written in C++, so it provides you the benefits of a custom rig, without the limitations of a closed animation system, and without the complexity of scripting a rig from scratch. As we all well know, creating a custom animation rig from scratch is often a time consuming, technically challenging task. A sophisticated rig can require complex scripting and weeks of development time.

We have made creating and editing a CATRig as quick and straightforward as possible. You simply select the rig closest to your requirements from the preset list, and click in the viewport.

One big difference between CAT, Biped and Motion Builder, is that CAT was designed to allow you to create any character configuration. Human, quadruped, spiders, insects and fantasy characters are all possible.

When creating your rig, adding new rig elements like heads, limbs and tails is as simple as clicking a mouse. Rig proportions are then edited interactively with CAT's stretchy limbs and spines.

To smooth out the skin deformation on twisted limbs, all limb bones can be segmented as much as you wish; as with the spine. Segment rotations and twisting are spline weighted for full control with minimum keyframing.

When you are happy with your rig you can save it as a new preset so it can be reused and repurposed, right away.

With CAT you can create any rig configuration in minutes!

See also

How do I create rigs in CAT?

2. Keyframing with CAT

CAT2 now boasts a whole new rig manipulation system called F/IK™ that allows you to push the rig around in the viewport, without having to bother too much about IK and FK, and without requiring you to have multiple windows open, as with other systems.

Effect hierarchy is core to the F/IK system. With effect hierarchy, if you move a bone in the hierarchy (regardless of whether you are in IK or FK), the bones on either side will rotate to accommodate the move. This means you can pose the rig almost entirely with the move tool, which is quick and intuitive.

CAT2 has a whole new IK system called FK Driven IK that provides unprecedented power and flexibility over any other IK system. Among other features, it boasts the ability to position the IK target anywhere up the limb, for example at the knee for crawling characters, and of course it supports seamless, curve controlled blending between IK and FK.

Also new to CAT2 is a system called retargeting. Retargeting tries to constrain the angle of the limb, moving the parent hub (e.g. ribcage) to fit. As an example, if both arms have retargeting turned on, the ribcage will position itself automatically to provide a "best fit".

CAT’s procedural spine removes the necessity of rotating every spine link individually, removing lots of unnecessary keyframing. CAT2 also features an optional FK spine for those who want to be able to tweak individual spine links.

Pin bone allows you to temporarily pin your ribcage, allowing you to tweak the pelvis without affecting the upper body.

CAT2's new foot pivot system makes it possible for you to animate the foot pivot freely, directly in the viewport.

CAT's sophisticated digit controls allow you to work with fingers and toes with a minimum of fuss. It even has a digit pose preset system.

CAT was designed from the beginning to be thoroughly integrated into 3ds Max, providing full access to the complete arsenal of 3ds max’s animation controllers. This means that you have full access to all your curves; procedural controllers, like the LookAt controller; and all functions are exposed to script for the ultimate in flexibility.

CAT allows you to keyframe faster and more intuitively than ever before.

See also

How do I keyframe with CAT?

3. Creating walk sequences

Typically, creating convincing walk sequences requires a lot of time and patience. Every keyframe, for every element of the character has to be laid down individually.

Using CAT2's procedural system, CATMotion, first you create the walkcycle you require, and then you simply drive the character around the scene with a path node. The rig calculates individual foot placement automatically. Of course the resulting footprints can then be edited, and even animated.

This means that a walk sequence that would normally have kept you at the coal face for days can be completed in less than an hour!

One of the big challenges of working with IK is the bones snapping as the solution gets too straight. With CAT's retargeting you can create those nice, realistic straight legged walks, impossible with normal IK systems.

Another tough one is matching feet up to uneven surfaces by hand. With CATMotion, we’ve removed that headache too, with automatic collision detection.

One of the hardest things to deal with is the director changing their mind, usually at the 11th hour. Changing any aspect of the sequence may well mean re-animating from scratch. CAT lets you edit the walkcycle or even the path of the character at any time without having to redo everything!

With CAT walk sequences that previously took days can now be achieved in less than an hour.

See also

How do I create walk sequences in CAT?

4. Non Linear Animation

As your animation gets longer and more complex it becomes harder and harder to maintain the overview. Inserting a sequence into an existing one can be a real nightmare.

CAT’s non linear animation system allows you to break the animation into manageable sections. Each layer can be sped up, slowed down, reversed, and even transformed in space!

Adjustment layers allow you to offset the existing animation, including CATMotion.

For total control we allow you to apply different layers to different parts of the rig with our feathered weighting system. For clarity, your rig can display each animation layer's colour, so you can see which layer is affecting which part of the character!

Of course, the layer manager makes it easy to combine any number of existing animation clips.

With CAT’s superior non-linear animation system you can greatly improve flexibility and efficiency!

See also

How do I use CAT's NLA system?

5. Reusing Animation

Working with custom rigs it is difficult to reuse existing animations and poses, especially between different rigs. This means that you will often have to create existing animations again from scratch, which burns a lot of valuable sleeping time.

Using CAT’s clip/pose system you can save animations and poses for reuse. Keyframes are stored exactly as they were created, using all the same animation controllers, meaning they come in exactly as you saved them. It is even possible to save out the whole layer stack to retain the ultimate in flexibility. And of course clips and poses can then be reloaded onto any other CATRig.

In CAT2 the clip (CLP) files will now store constraints and even scripts, meaning that you can save your custom configurations up for reuse.

CAT can also save and load poses on and off limbs for more efficient work flow.

In short, CAT’s clip/pose system is a huge time saver and removes repetition.

Using CAT you can create libraries of animation clips that can be loaded onto any other CATRig.

See also

How do I reuse animation with CAT?

6. Conclusion

CAT will allow you to make huge improvements on the efficiency with which you can create animation rigs, walk sequences, and keyframe animation.

CAT is the ultimate addition you can make to your character animation pipeline!

Retrieved from "CAT 2.4 CHM help file (local)"


Scripting CATRigs

The CAT Rig is made up of a few basic elements: CATParent (The character node for the rig.), Hubs, Limbs, LimbBones, Ankles, and Digits.

CATParent

The CATParent holds information related to the whole rig.

Properties:

To see the available properties on the CATParent call ShowProperties on the CATParent.

.CATName (CATRig) : string

The name that is used to prefix all rig elements names.

.CATMode : integer

This parameter determines what mode the character is currently in.

Example:

$CATParent.CATMode = 0 - Puts the CATRig into Setup Mode.

$CATParent.CATMode = 1 - Puts the CATRig into Animation Mode.

$CATParent.CATMode = 2 - Puts the CATRig into Stretchy Mode.

.CATUnits : world units
.Layers : float

Use this parameter to access the LayerRoot controller that manages all the layer in the layer stack.

Interface: CATParentFPInterface

Properties:

.LengthAxis : string : Read|Write|Validated by Validator function

This value returns the number of layers on the character.

.Node : node : Read

Returns the currently selected layer.

.RootHub : control : Read

Returns the index of the solo layer, or -1 if no layer is soloed.

.CATVersion : integer : Read

Returns the version of CAT installed. This is the same number you see in the about box.

Methods:

<void>AddHub()

Add the root hub to an empty CATParent.

<boolean>LoadRig <TSTR>filename

Load a CATRig preset from the hard drive and create a CATRig

<boolean>SaveRig <TSTR>filename

Save the current CATRig to the hard drive as a CATRig preset.

<node>GetBoneByAddress <TSTR by value>Address

Every bone in a CATRig can return an address. The address returned is a name independent way of uniquely identifying all bones in a CATRig. See CATNodeControl

Example:

$CATParent.GetBoneByAddress "CATParent.Hub.Limb[1].LimbBone[1].BoneSeg[0]"

CATControl

All bones in a CATRig are derived from CATControls. This makes CATControl the basic building block of the CATRig hierarchy.

Interface: CATControlInterface

The CATControlInterface exposes a set of script properties and functions available on all controllers in the CATRig controller hierarchy.

All transform controllers are also derived from CATNodeControl. There are a few controllers in the CATRig hierarchy whose purpose is to maintain the hierarchy, rather than to control the positions of any particular INode. These controllers are not transform controllers. One of these controllers is SpineData, whose job is to maintain the spine; creating and destroying spine bones if you call ShowInterfaces.

Properties:

.CATParent : node : Read

This returns the CATParent object

.BoneName : TSTR by value : Read|Write

Methods:

<void>PasteLayer <control>source <integer>fromindex <integer>toindex <boolean>instance

You can use this function to paste a layer from one bone hierarchy to another. The source control must be exactly the same type as the one you are pasting onto. This method will automatically paste this bone and all its children.

<void>PasteRig <control>source

Paste the rig settings from the source control onto the current controller.

CATNodeControl

All Transform controllers in a CATRig are derived from CATNodeControl. This means that for any selected CAT bone, $.transform.controller, or $[3], will return a CATNodeControl, and all the following functions will be available.

Interface: CATNodeControlInterface

The CATControlInterface exposes a set of script properties and functions available on all transform controllers in the CATRig controller hierarchy.

Properties:

.NumArbBones : node : Read

This returns the number of Extra bones that have been added to this bone. All bones in CAT can have Extra bones added.

.Node : node : Read

Access to the node of the current transform controller.

.Address : TSTR by value : Read

This returns a unique address that identifies this bone in the CATRig hierarchy. Use the method GetBoneByAddress, found on the CATParent to convert the address back into a Node.

.SetupTM : matrix3 by value : Read|Write

The matrix that this bone uses to control its position while in SetupMode.

Example:

$[3].SetupTM = Matrix3 1 - Resets the Setup Matrix to an Identity Matrix.

.tmBoneParent : matrix3 by value : Read

This is the matrix that this controller receives from its parent.

.tmBoneWorld : matrix3 by value : Read

This matrix represents the final transform matrix for this bone, not including any scale.

.LocalScale : point3 by value : Read

This point3 returns the total scale applied in local space to this bone.

.tmChildParent : matrix3 by value : Read

This transform matrix that is passed on to any children of this bone.

.Stretchy : boolean : Read|Write

As found in the Hierarchy->LinkInfo panel, this Boolean determines whether this bone will stretch when the character is in Stretchy Mode.

.EffectHierarchy : boolean : Read|Write

As found in the Hierarchy->LinkInfo panel, this Boolean determines whether manipulations to this bone effect neighbouring bones in the hierarchy.

.ApplyTransforms : boolean : Read|Write

As found in the Hierarchy->LinkInfo panel, this Boolean determines whether the movements to the transform node are directly applied to this bone.

Methods:

<control>AddArbBone()

Add an Extra bone to the current CATNodeControl.

<control>GetArbBone <index>index

Returns the indexed ExtraBone.

<control>CreateLayerFloat()

Creates a new layered float controller that can be used to drive the animation of any animatable parameter in Max.

Example:

Suppose that you had a sphere called Sphere01, and you wanted the radius of the sphere to be controlled by CAT’s layer system. You need to select a CATbone in Max, and then run the following command in the listener:

$Sphere01.radius.controller = $[3].CreateLayerFloat();

The spheres radius controller is then controlled by a float controller that utilises CAT’s layer system. It will have a non-animatable setup value, and add and remove layers along with the rest of your character. The local weight curve will be the same as that of the bone that was used to create the layer controller.

A note on sharing animation between characters:

The CAT Rig system has no idea about what you have assigned the layer controllers to. It does not know about morphers or custom attributes. All the CATRig system knows is that you have created extra layer controllers, and assigned them to control animatable parameters in your scene.

Each CATBone stores a list of all the Layer Float controllers that have been created from that bone. When CLP files are saved, each of these controllers writes down all the information about the controllers and keyframes in its layer stack.

When loading CLP files this data is read back into the controllers in the same order they were written out. This means that if you want to be able to share animation between characters, it is important to add the Extra Layer Float controllers in the same order for each character.

CATRigA.ExtraController 1 <-> CATRigB.ExtraController 1

CATRigA.ExtraController 2 <-> CATRigB.ExtraController 2

CATRigA.ExtraController 3 <-> CATRigB.ExtraController 3

Hubs

Interface: HubFPInterface

Properties

.PinHub : boolean : Read|Write

As found in the Hierarchy->LinkInfo panel, this Boolean determines whether the hub is held still when the base hub of the incoming spine is manipulated.

Methods:

<boolean>SaveClip <TSTR>filename <time>StartTime <time>EndTime

Save a Clip file starting at the hub and saving all data on all children.

<boolean>SavePose <TSTR>filename

Save a Pose file starting at the hub and saving all data on all children.

<boolean>LoadClip <TSTR>filename

Load a Clip file onto this hub and all its children.

<boolean>LoadPose <TSTR>filename

Load a Pose file onto this hub and all its children.

<void>CollapsePoseToCurLayer()
<void>CollapseTimeRangeToCurrLayer <time>StartTime <time>EndTime <time>Frequency

Collapse the animation from this hub and all its children down to a new layer.

<void>AddArm()

Add an arm to this hub.

<void>AddLeg()

Add a leg to this hub.

<void>AddSpine()

Add a spine to this hub.

<void>AddTail()

Add a tail to this hub.

Limbs

Example

ShowInterfaces $[3].boneData.limbdata.controller

Interface: LimbFPInterface

Properties:

.IKTarget : node : Read

Access to the IKTarget node.

.IsLeg : boolean : Read

Is this limb a leg.

.IsArm : boolean : Read

Is this limb an arm.

.LMR : integer : Read|Write

Is this leg Left, Middle or right.

LMR can be 1 0f 3 values: -1, 0 or 1

  • -1 = Left

  • 0 = Middle

  • 1 = Right

Example:

$[3].boneData.limbdata.controller.LMR == -1 - we have a Left limb selected

Methods:

<boolean>SaveClip <TSTR>filename <time>StartTime <time>EndTime

Save a Clip file starting at the limb and saving all data on all children.

<boolean>SavePose <TSTR>filename

Save a Pose file starting at the limb and saving all data on all children.

<boolean>LoadClip <TSTR>filename

Load a Clip file onto this limb and all its children.

<boolean>LoadPose <TSTR>filename

Load a Pose file onto this limb and all its children.

<void>CollapsePoseToCurLayer()
<void>CollapseTimeRangeToCurrLayer <time>StartTime <time>EndTime <time>Frequency

Collapse the animation from this limb and all its children down to a new layer.

Retrieved from "CAT 2.4 CHM help file (local)"







Changes/Updates per 20/jan/2009


Loading Old files from CAT1 into newer versions of CAT

Due to some major architectural upgrades that occurred to CAT between Version 1 and Version 3, it is not possible to re-open CAT 1 files in CAT3. Each version of CAT upgrades the internal data structures, and one major upgrade for CAT3(support for XRefs), meant the converting CAT1 files to CAT3 was not possible.

It is possible to upgrade files by opening them and re-saving them in different versions of CAT.

Here are the steps to load CAT files into CAT 3.

http://www.softimage.com/products/betaCAT/downloads/CATFullV1.41(Max7).exe

http://www.softimage.com/products/betaCAT/downloads/CATFullV2.51(Max7).exe

http://www.softimage.com/products/betaCAT/downloads/CATFullV2.51(Max8).exe

Retrieved from "http://cat.wiki.softimage.com/index.php/Loading_Old_files_from_CAT1_into_newer_versions_of_CAT"




The Gallery

Can be found at:

http://www.catoolkit.com/gallery/

Retrieved from "CAT forum"

Moving and aligning objects using MaxScript

Most objects in Max use a simple controller to define their position.

You can directly access the position controller using $'objectname'.pos

In CAT, things are a little more complex.

Firstly, CAT has a layer system. That means that an object will have anywhere between 0 and many layers. Each layer has its own position controller.

When we built the CAT layer system, we wanted to layer complete transforms, and so we built the layer system around PRS controllers. Each PRS controller has its own position, rotation and scale controller.

When you type in $'catobjectname'.pos and press enter into the script listener, it may or may not work.

It will work if the CAT object has a layer selected. This is because the script function '.pos' asks the object for its position controller and then determines the bones position. (interestingly, it doesn't actually use the position controller to determine the value).

The script function '.pos' will not work if either, no layer is selected, or the character is in setup mode and there is no setup mode controller.

Summary, getting and setting an objects position using '.pos' is not going to work when scripting on CAT. There is a safe and guaranteed method that will always work on CAT and any other object to get its global position(Even Biped).

That is you access the transform of the object(matrix3), and the get the position from that matrix.

e.g.

$ClownRArm21.transform.pos

In some cases on CAT, the position is determined by many properties. You can use SetupControllers, LayerTransforms, and the layer can be an adjustment layer on top of an absolute layer.

CAT has a lot of code dedicated to handing manipulation, so its easiest to take advantage of that.

You can use the move and rotate commands to position and align a CAT object with another object in a scene. What you need to do is calculate the amount of movement or rotation that you want to apply to an object to get it aligned with the target object.

For example:

Move $ClownRArm21 ($Point01.pos - $ClownRArm21.transform.pos)

($Point01.pos - $ClownRArm21.transform.pos): This calculates the difference in position between the CAT bone and the target object.

The rotation is a little more complex because you have to apply the right coordinate frame.

AlignCATObject

Here is a function that you can use to align CAT objects with other objects in the scene.

The function has 2 optional arguments: movebone and rotatebone that both default to true.

fn AlignCATObject catobject targetobject movebone:true rotatebone:true =
(
    if movebone then ( 
        Move catobject (targetobject.transform.pos - catobject.transform.pos)
    )
    if rotatebone then (
        in coordsys local ( 
            Rotate catobject ((catobject.transform * (Inverse targetobject.transform)) as angleaxis) 
        )
    )
)

Examples:

AlignCATObject $ClownHead $Point01

This will do a complete alignment of the $ClownHead bone with the point helper

AlignCATObject $ClownHead $Point01 movebone:false  rotatebone:true

This will align the CAT head with the point helper, but not move it.

AlignCATObject $ClownHead $Point01 movebone:true  rotatebone:false

This will move the CAT head to the point helper, but not rotate it.

Retrieved from "CAT forum: http://www.catoolkit.com/forum/forum_posts.asp?TID=1822&PN=1"

Known bugs: Inherit Position vs. Inherit Rotation

By default, when you rotate ribcage, head and arms rotate as well. Is it possible to make CAT acting in a similar manner to CS biped - it means that rotation is not propagated for limbs? It's just hard to animate some hand actions while walking, cause hands are waving due to ribcage rotations?

OK, I think I found it - it's in Hierarchy / Link Info panel.

But for some reason Inherit Position acts like Inherit Rotation and Inherit Rotation acts like Inherit Position.... They're mixed up.

Gräck Moderator Group

Yes this is a known bug.

Retrieved from "http://www.catoolkit.com/forum/forum_posts.asp?TID=1854&PN=1"

What is different in CAT2?

Although the basic workflow and principles of CAT1 remain constant in CAT2, there are many changes in the update. Some are just UI tweaks and others are completely new systems that will significantly affect the way you work.

One thing that you will notice right across the system is that all the icons have changed. I am sure that you will find the new UI as pleasing to the eye as we do.

Rig Setup

All bones can now have custom geometry

Editing Bone Pivot Positions

Extra Bones

Facial Rigs

Deleting CATRigs is now undoable

Characters are now Cloneable

New IK System

All bones now have full PRS (Position, Rotation, Scale) controller stacks

Palms and collarbones now optional on limbs

Changes to the CATParent UI

X_Axis_Aligned_Rigs

Independent_size_settings_for_Spine_bones

One_Bone_Limbs

More_Flexible_Rig_Naming

FK_Spines

Animation

F/IK

Changes_in_Layer_Manager

Layer Manipulations now undoable

Time Warp Curves

The Layer Ranges Editor now supports Out-of -Range looping options

Decoupling Animation Layer Ranges

Layer Transform Nodes are now animatable

Animateable Scale

Stretchy Bones

Retargeting

Copy/Paste Animation Layer

Multiple CATMotion Layers

Pin Bone

Better control over pelvis/ribcage motion in CATMotion

Foot Pivot System

New World Adjustment layers

Big scenes more responsive

Limb IK Position Slider

New CATBone Hierarchy rollout

Hub Hierarchy rollout

Motion Data Saving and Loading

Clip Saving Now More Powerful

Scripting

More Scripting exposure

Retrieved from "CAT 2.4 manual (local)"

New Features in Scripting

More Scripting exposure

All controllers have generic methods to access the INode, and CATParent, etc.

See also:

Scripting Documentation

New Features in Rig Setup

New Features in Animation System

New Features in Motion Data Saving and Loading

Retrieved from "CAT 2.4 manual (local)"

Naming the CATRig

CATRigs are created with their allocated preset name. If you want to have more than one of the same CATRig preset in a scene it is a good idea to give it a unique name.

To change a CATRig name:

The CATParent is renamed and the entire CATRig hierarchy inherits the new name.

Retrieved from "CAT 2.4 manual (local)"

Removing Elements of the CATRig

Elements are removed by deleting. Deleting an element will delete it, and its children.

To delete the whole CATRig:

Or

To remove an arm:

To remove the upper body:

To remove a digit:

Note:

Individual rig elements can only be deleted in Setup Mode. When in Animation Mode if you select any part of the rig the whole rig will be deleted.

Retrieved from "CAT 2.4 manual (local)"

Editing your CATRig

Once a CATRig preset or a pelvis has been created it is time to start editing it to suit your requirements. You will be able to get most of the way simply by interacting with your rig in the viewport. To view any element's properties, as with all 3ds Max objects, select its rollout in the Modify panel.

Image compliments of Digital Pictures Iloura

See also

Editing Your Rig Interactively in the Viewport

Editing a CATRig Mesh

Editing Bone Pivot Positions

Editing the CATParent

Editing Hubs

Editing Spines

Editing Limbs

Editing Collarbones

Editing Limb Bones

Editing Palms

Editing Digits

Editing Limb IK Targets

Editing Tails

Editing Extra Bones

Retrieved from "CAT 2.4 manual (local)"

CATMotion Layers

CATMotion layers are a subset of absolute layers. Instead of storing keyframe data they store CATMotion data. CATMotion is used to create parametric walkcycles.

In CAT2 you can now add as many CATMotion layers as you wish, so you can blend between walkcycles in the Layer Manager, rather than in the Preset Manager in the CATWindow, as was necessary in CAT1.

See also:

Absolute Layers

Animation Modes

Adjusting Existing Animation

Blending between layers

Retrieved from "CAT 2.4 manual (local)"

Individual Controllers in Detail

CATMotion works by dividing up the motion into rotational and positional cycles, each axis of which is assigned its own controller. In addition each element is also assigned rotational and positional offset controllers. Some elements have special controllers too, for their unique role.

See also

Introduction to CATMotion

Introducing the CATWindow

Introduction to Knee Angle Based Body Lifting

Globals

LimbPhases

Editing the LimbPhases

Retrieved from "CAT 2.4 manual (local)"

Cyclic Rotational Controllers

The rotational controllers are Roll, Pitch and Twist.

Roll

Roll direction on the pelvis (indicated in yellow)

Roll controls the rotation cycle on an element from side to side (X axis).

Pitch

Pitch direction on the pelvis (indicated in yellow)

Pitch controls the rotation cycle of an element along the direction (Y axis) of the rig.

Twist

Twist direction on the pelvis (indicated in yellow)

Twist controls the rotation cycle around the height of the rig (Z axis).

Retrieved from "CAT 2.4 manual (local)"

Cyclic Positional Controllers

The positional controllers are WeightShift, Push and Lift.

WeightShift

WeightShift direction on the pelvis (indicated in yellow)

WeightShift controls the positional cycle of an element for the side to side motion (X axis) of the rig.

Push

Push direction on the pelvis (indicated in yellow)

Push controls the positional cycle of an element along the direction (Y axis) of the rig.

Lift

Lift direction on the pelvis (indicated in yellow)

Pitch controls the positional cycle of an element along the up direction (Z axis) of the rig.

Retrieved from "CAT 2.4 manual (local)"

Offsets

Rotational Offsets

OffsetRot is used to offset rotations for each of the three axis.

Positional Offsets

OffsetPos is used to offset positions for the three axis.

Retrieved from "CAT 2.4 manual (local)"

Special Controllers

Specialized controllers exist to add functionality to specific elements. Almost all elements have at least a couple.

See also

Hub Controllers

Limb Controllers

Ankle Controllers

FootPlatform Controllers

Arm Controllers

Collarbone Controllers

Palm Controllers

Retrieved from "CAT 2.4 manual (local)"

Introduction to CAT Menu Tools

CAT has a selection of tools that greatly enhance the power of CAT. These are found in the CAT menu on the Max main menu bar at the top of the Max UI.

The utilities include:

Capture Animation

Automatic Ragdoll Setup

Apply Max IK Systems to CAT Bones

Retrieved from "CAT 2.4 manual (local)"

Apply Max IK Systems to CAT Bones

The Apply Max IK tool enables you to use Max's integrated IK systems to animate CATRigs. You can now use splines to control long tails, or HI/IK on fingers to give your fingers and toes IK controls. The Max IK Systems will only affect 1 layer at a time. This gives you the ability to use IK, and FK on the same character at different times in the same scene. Alternatively, you can assign the Max IK system to a relative layer at the bottom of your stack to control all layers on your character.

To apply a MAX IK system to CATBones:

  1. To access the tool, go to the CAT menu, and select Apply Max IK, from the options.

  2. Select the bones that you would like to apply the IK system to. You can select either arms, legs, fingers, toes, or tails.

  3. The Pick IK Solver drop down list gives you a list of available IK Systems that you may assign.

  4. You can either pick an existing layer to hold the IK system, or you can let the toll create a new layer.

  5. The Num Knots spinner defines how many knots will be used to create a spline if the tool is used to create a new spline for the Spline IK System.

Using Spline IK

When assigning Spine IK, the tool needs a spline to use to control the IK system. The tool can create a new spline based on the CAT Bone hierarchy you have selected.

Tip:

Bend the hierarchy in the direction you would like to see the largest range of motion. For example, if you are constraining the tail of a lizard, it is important to bend the tail around the body as this will help configure the IK system for the best movement. If the tail were to be perfectly straight before you assign the IK system, then the bones in the tail may flip around when the tails it later animated. Always make sure the hierarchy you assign the spline IK system to is bent before assigning the IK System.

Retrieved from "CAT 2.4 manual (local)"









My Changes in the CAT Documentation

The Base

Additions

Fixes

TODO

Up To Date?

Missing

Retrieved from "CAT 2.4 CHM help file (local)"



Editing CAT's Naming Scheme

(There is currently no text in this page)

Retrieved from "http://cat.wiki.avid.com/index.php/Editing_CAT%27s_Naming_Scheme"



Relative Local Layers

(There is currently no text in this page)

Retrieved from "http://cat.wiki.avid.com/index.php/Relative_Local_Layers"


Relative World Layers

(There is currently no text in this page)

Retrieved from "http://cat.wiki.avid.com/index.php/Relative_World_Layers"


CATMotion Layers

(There is currently no text in this page)

Retrieved from "http://cat.wiki.avid.com/index.php/CATMotion_Layers"


Cap Layers

(There is currently no text in this page)

Retrieved from "http://cat.wiki.avid.com/index.php/Cap_Layers"


Extra Rig Components

(There is currently no text in this page)

Retrieved from "http://cat.wiki.avid.com/index.php/Extra_Rig_Components"


Exporting to FBX

(There is currently no text in this page)

Retrieved from "http://cat.wiki.avid.com/index.php/Exporting_to_FBX"