MotionBuilder DrivenKey Importer

 

Download here: jpDrivenKeys.zip


Version Notes:

v0.1 - June 10, 2008 - First Draft


Limitations:

1. Only works on basic transformation channels right now (Translate, Rotate, and Scale). No custom channel connections.


Usage:


1. Do standard DrivenKey rigging between any kinds of objects in Maya. Save.

2. Export Maya scene to FBX

3. Run jpExporrtDrivenKeys.mel, save to exportedDrivenKey.mayaAscii file somewhere.

4. Load .fbx scene into Mobu


at this point there should be no driven key connections working in Mobu.

5. In Mobu, run jpDrivenKeys.py, point it to your exportedDrivenKey.mayaAscii file


Done. It should make a RelationConstraint called DrivenKeys w/ a whole bunch of boxes and connections. If the driver and/or driven nodes do not exist in the MoBu scene, the script should create placeHolder Nulls and connect those values. In theory you could then replace the nulls with your actually rigging elements after the fact by hand re-wiring if needed.


Let me know what you think. Major breakages. First things to add, etc.

.zip contains:


1. jpDrivenKeys.py - main MoBu python script to be run in 7.5Ext2A or better (probably should do B).


2. jpExportDrivenKeys.mel - Maya script to run on your Maya scene which has DrivenKeys in it (will add custom attrs to animCurve nodes and export)..


3.simpleReadSource.ma - Maya scene with a couple of locators with DrivenKeys on them to test the above .mel script with.


4. simpleDK_export.ma - sample export file. Result of running jpExportDrivenKeys.mel on simpleReadSource.ma


5. crazyCurveDK_export.ma -sample export file. Has detailed DrivenKey curve in it.

Disclaimer:

This code is proof-of-concept only. It is not intended for production use. The goal is to get some ideas floated in the community and share some of the black box of Relation Constraint wiring. Use at own risk, blah, blah, blah. You all know what I mean.