doprbdtoolutils module

doprbdtoolutils.addConstraintNetworkSolver(dopnet, name, constraintnet)

Set up a SOP Solver and wire it into the constraint network DOP.

doprbdtoolutils.addGlueNetworkSolver(dopnet, constraintnet)

Set up the default SOP Solver for glue constraint networks, which just deletes broken glue bonds.

doprbdtoolutils.addRestNode(dopimportnode)

Adds a Rest Position node so we have good rest positions for any shaders the user wants to add.

doprbdtoolutils.buildConstraintNetworkDOPNodes(dopnet, nodename, soppath, constraint_nodes, set_current=True)

Set up the constraint network DOP and its associated nodes. Returns the constraint network DOP node.

doprbdtoolutils.buildGlueConstraintNode(dopnet, strength=10000)
doprbdtoolutils.buildGlueNetworkDOPNodes(dopnet, nodename, soppath)

Set up the constraint network DOP and its associated nodes for a glue constraint network. Returns the constraint network DOP node.

doprbdtoolutils.buildGlueNetworkFromObjects(objectlist)

Given a list of rbd objects, fetchs them into a new Object, glues them together, and sends the resulting constraint network back to DOPs

doprbdtoolutils.buildGlueNetworkGeometry(sopnode)

Given a SOP Node whose geometry has a ‘name’ primitive attribute, builds the constraint network geometry. Returns the last node of the SOP chain.

doprbdtoolutils.buildPinConstraintNode(dopnet)
doprbdtoolutils.createGluedObject(kwargs, use_packed)

Create an RBD Packed Object or RBD Fractured Object whose pieces are glued together.

doprbdtoolutils.createPackedRBDInstances(objnode, pointsnode, geonode, nameprefix, attribstocopy)

Sets up an RBD Packed Object for instancing. Returns the newly created DOP node.

doprbdtoolutils.createRBDGrains(kwargs)

Select an object and turn it into a pile of sand, simulated as RBD spheres.

doprbdtoolutils.createRagdollConstraintNetwork(dopnet, dopobjnode, sopnode)

Build the constraint network for a ragdoll.

doprbdtoolutils.createRagdollObject(kwargs)

Create an RBD Packed Object from agent primitives, and set up constraints for ragdolls.

doprbdtoolutils.createSphereObject(kwargs)
doprbdtoolutils.dopObjectInit(info, dopobjectnode, solvernode, objectnode, sopnode, subtype=None)

Specializes the DOP Object node initialization process for RBD Object creation nodes of various kinds (RBD Object, RBD Glue Object, etc).

doprbdtoolutils.fracturedDopObjectInit(info, dopobjectnode, solvernode, objectnode, sopnode, subtype=None)

Specializes the DOP Object node initialization process for RBD Fractured and Glue Objects.

doprbdtoolutils.getKeyframeDopForDopObject(dopobject)

Find the RBD Keyframe Active DOP that controls the active state and position keyframing for a particular RBD Object. If no Keyframe Active DOP exists for this object, one is created.

doprbdtoolutils.glueNetwork(kwargs)

Convert the RBD objects into a glue network.

doprbdtoolutils.makeAutoFreeze(kwargs)

Convert the RBD objects to breakable one by adding rbdautofreeze object if not already present.

doprbdtoolutils.makeBreakable(kwargs)

Convert the RBD objects to breakable one by adding voronoifractureconfigure object if not already present. Do this by passing a list of object-creator pairs.

doprbdtoolutils.makeImpactAnalysis(kwargs)

Add ImpactAnalysis Solver to RBD Objects in Dop Network

doprbdtoolutils.makeObjectAutoFreeze(rbdobject)

Giving the rbdnode, append a rbdautofreeze to it. No-op if one is already present.

doprbdtoolutils.makeObjectBreakable(rbdlist)

Giving the rbdnode, append a voronoifractureconfigureobject to it. No-op if one is already present.

doprbdtoolutils.makeObjectImpactAnalysis(rbdobject, rbdsolver)
doprbdtoolutils.packedDopObjectInit(info, dopobjectnode, solvernode, objectnode, sopnode, subtype=None)

Specializes the DOP Object node initialization process for RBD Packed Objects.

doprbdtoolutils.setDopObjectActiveState(info, dopobject, active)

Changes the active state of an RBD Object. This is done by creating (or modifying an existing) RBD Keyframe Active DOP that is associated with this one RBD Object.

doprbdtoolutils.setGroupString(rbdnode, node, groupstring)

Sets the group parameter of node to be groupstring. Has the extra feature that if all of the rbdnode’s objects are accounted for in groupstring, it uses * instead