I, also, am no expert, but here's what I do know from writing a few custom deformers.

The dependency graph is made of dependency nodes that are connected to each other. When a node is used for input, it's data is cached internally in the deformer node. This is functionality that's built into MPxDeformer, and comes basically for free if you use the deform() method to handle your deformations. That node (in this case a mesh) only updates that cache data if it's output plug is marked dirty. If the connection is broken, Maya just holds onto that cache data and keeps using it as though the node was there. This is by design, and is meant to enhance performance by only running calculations if data has changed. I haven't worked with MPxDeformer enough to know if you get access to that cache from inside (that is, if you wrote a custom blendshape node and accessed the data internally), but I'm almost positive that it's completely closed off from outside.

What you could do, conceivably, if you need to reconstruct the original shapes is to iterate through the targets list in the blendshape node, setting the weights to 1 one at a time, and then duplicating the mesh or reading the point data you need.

Maybe that helps?

Joe

On 1/28/2015 8:35 PM, [email protected] wrote:
sorry, I just re-read your posts.  I wasn't much help, lol.



---
This email is free from viruses and malware because avast! Antivirus protection 
is active.
http://www.avast.com

--
You received this message because you are subscribed to the Google Groups "Python 
Programming for Autodesk Maya" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/python_inside_maya/54C9BF89.70001%40gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to