This is a brief demo of the initial Red9 MetaClass Python API aimed at managing and wrapping data to a Maya MetaNode system. All data is serialized to Maya network nodes so is stored with the scene. There's handling for JSON serializing of complex data and retrieving that data back in a very neat and simple Pythonic manner, getting the data back directly from the Maya node but in a completely seamless way.
This is just the initial fleshing out, the long term aim to to provide a generic method of managing complex Maya rig structures and marking data without you having to write your own API. So you'd make an mClass rig node and hook the rig up to that making retrieval of controllers etc a doddle!
http://red9-consultancy.blogspot.co.uk/search/label/Download
All comments very welcome
Are you overloading the setattr method in the node? Im just not sure how your creating the attribute then affecting it from the ui e.g.
ReplyDeletenode.addAttr('name', value) then in the ui you edit the value and in then just query from the node itself.
I understand the overriding now. :)
DeleteI'm overloading all the __getattribute__ and __setattr__ in the python class so that in a proper pythonic manner you can manage the Maya node attrs. This means you don't have to worry about the attribute type, or using cmds to get the data, you just treat the Maya node as a standard Python object and let the class deal with everything else. T
ReplyDelete