I. Understanding dPuppet
II. Requirements
III. Using dPuppet
IV. Advanced Options
V. Concluding Notes
VI. Version Notes

Updated: 9/17/04

I : Understanding dPuppet

dPuppet is a set of animation tools meant to allow animators to keep their focus on the artistic task on hand, and not the technical. Just about any rig or animated objects will work with dPuppet, and setup takes only a few minutes and can be saved for later use. This can also save your bind pose, import/export animation, and import/export memberships. Three hotkeys have been added: Xray Toggle, Wireframe on Shaded Toggle, and SmartSnap; smartsnap toggles rotate snapping using the x,c,v key when the rotate tool is active.

II : Requirements

- Maya 6.0

dPuppet has several limitations based upon how it works.

- Any objects added to the panel must have only their keyable attributes visible in the channel box. In my opinion, this is just a good practice to use anyway when animating objects.

- dPuppet was built with character animators in mind, so many of its functions are geared towards that, but still can be used for non-character animation.

NOTE that you should ALWAYS backup your work before using any scripts on it.

III : Using dPuppet

A : Setup dPuppet for Animation

1. When you first load dPuppet, you will see the config panel. If you already have a configuration saved, just goto File > Open Character Config, and select the configuration file. Otherwise, you will need to setup the panel for your animation.

2. Before you start adding sets, you should goto the menu, Tools > Character Mode. If you are going to be doing character animation leave this toggled, otherwise de-toggle it.

3. There are 4 buttons along the bottom of the set list, [+] [-] [<] [>] :

[+] This will add a new set based on the objects you have selected.
[-] This deletes the selected line in the set list.
[<] This shift the selected set up a line
[>] This shift the selected set down a line

Double Clicking on a line will allow you to rename it.

NOTE that the first line in the set list is always set to All. If you are doing character animation, this set must be set to contain all controls in order for the bind pose function to work.

4. Add each of your sets as you see fit, theres no limit in number. Once you finish, you can rename the sets by double clicking on them.

5. If you are animating a character, at this point you have two options for setting the bind pose. If you use the system of zeroing all attributes before animation, you will not need to use the "Set Bind Pose" function as the default bindpose function will automatically reset all controllers to zero. If your bind pose contains non-zeroed controls, then use the set bind pose function to store the bind pose numbers. Unsetting will delete the stored bind pose and re-enable zero-based controls for bind pose.

6. Once you finish, you can goto File > Save Character Cfg... to save this configuration for later use. You can hide the config panel at this point by going to Tools > Hide Config Panel.

B : Exporting Animation

NOTE that this function is not perfect, but has worked without too much issue for me. I am still ironing out certain issues but it is quite usable so far. This isn't anything fancy, more for transferring animation between scenes which it works well for.

1. To export animation, select all objects who's animation you wish to export, and then goto Files > Export > Export Animation.

2. There are two options, Data or MEL. Data exports pure animation data which is only importable by dPuppet, the other exports an executable MEL script which will apply the animation back autonomously. Animation can only be imported back to same-named objects, unless you edit the file by hand.

Importing is a matter of going to import animation and selecting the appropriate file.

C : Exporting Memberships

1. Select the sets you wish to export, or leave everything unselected to export all sets in the scene.

2. Goto File > Export > Export Membership, and save it to a file.

To import, merely goto Import Membership and select the file. Note that all set names must be the same to import their memberships.

IV : Advanced Options

A : File Menu

New Character Cfg : This clears the current sets for a new setup.

Open Character Cfg : This will open a dPuppet set config and the saved bindpose (if there is one).

Save Character Cfg : Lets you save your currently set config & bindpose.

B : Tools Menu

AutoRefresh Panel : This is enabled by default and updates the panel automatically as you add, rename, etc sets.

Refresh Panel : This will refresh the panel if you turned AutoRefresh off.

Wireframe on Shaded : This will set the "9" key to activate wireframe on shaded in the active modeling panel.

X-Ray Toggle : This sets the "8" key to toggle X-Ray on or off in the active modeling panel.

SmartSnap Toggle : SmartSnap allows the x,c,v keys to be used also to enable different degrees of rotate stap. "x" is 5 degree snap, "c" is 15 degree snap, and "v" is 45 degree snap, all of which are activated the same as point, curve, and grid snap, but the rotate tool must be active. Note that the snapping is relative.

Unsetting any of the hotkeys will set it back to factory default. If you have MasctorX, my Unreal export tool, it will appear in the Tools menu.

IV : Concluding Notes

This is a first release so there are almost certainly bugs but has worked for me fine thus so far. Make sure you read the entire readme (Help > dPuppet Help) if you have any issues. In the extremely unlikely event that this script somehow corrupts a file or whatnot, I highly recommend you backup all work before using this (or any) script (which you should already be doing as its a good practice to avoid mistakes/disasters). If you encounter any issues, found this tool useful, have recommendations, or anything else, email me at quantax<at>

I can also be found on with the nick quantax or quantax_.

Updates will be posted to in the scripting section.

Credit goes to Reggie aka Shivan_ for testing, always appreciated.

- Brandon

Disclaimer: I am not responsible if this script destroys your data, makes your computer spontaniously combust or anything else. Back up your projects often.

IV : Version Notes

v1.2 : 9/17/04
- Fixed bug where im/export animation did not work unless sets were configured.
- Shelf icon available

v1.1 : 9/15/04
- Removed outdated export naming prompt
- Fixed bug where stored bindpose would not export properly
- Minor UI improvements to reflect selected options

v1.0 : 9/13/04 - First release
- Retro-versioned from original to v1.0

© 2004 Brandon Fenning. This is protected by copyright under U.S. and international law. All rights reserved. This software is provided as freeware for non-commercial usages and permission to modify the software is held solely by the author.