I there a reason why the node state option (has no effect) is not really working?

For instance having two maya deformers, a twist and a bend and if i set the twist node to "HasNoEffect" it will do what i'm expected him to do, the node is bypassed but the bend deformer is still active.

Now if i have a soup node like the "smooth" this option won't work.


I'm also concerned about this for VDB, imagine having a vdb network with a write node at the end and another network with a read node for the vdb.

I have a shortcut to quickly enable the "HasNoEffect" and "frozen" on selected nodes to remove the nodes from the computation.

For vdb it somehow works but weirdly, first we can't bypass a node like what i said earlier for the soup nodes.

Second, to deactivate the VDB nodes it's not the same between parallel and DG.

In parallel ticking the frozen button is enough to deactivate the nodes, but in DG only the "Blocking" mode is able to disable the nodes from the computation.     


Quote 0 0
Because this part was left out of the base MPxNode class and every developer is responsible for implementing it for each of the nodes they develop individually.
In the case of deformers - the "has no effect" state overlaps with "envelope" = 0.
I think most SOuP nodes have both "has no effect" and "blocking" supported, but not "freeze".
Hope these notes make sense to you.
Quote 0 0

ok thanks,

i will have to dig more and do some experimentation on how to optimize these things, especially between parallel and DG.

Lots of time on complex graphs i have weird evaluations that sometimes works as expected with parallel but not in DG and sometimes the inverse working better with DG.


Quote 0 0