Found 380 posts.
Search results Show results as topic list.
Houdini Indie and Apprentice » RBD fractured object
-
- cwhite
- 741 posts
- Offline
The easiest approach is probably to use something like the Glue Cluster SOP, which sets up glue constraints so that some pieces are glued together into clusters (with infinitely strong glue bonds) and the clusters are glued together with weak glue bonds.
Houdini Indie and Apprentice » RBD fractured object
-
- cwhite
- 741 posts
- Offline
The RBD Fractured Object tool is for use with pre-fractured geometry (e.g. if you used the ‘Shatter’ shelf tool on your object) and will create a separate object in the RBD sim for each piece. It sounds like you may want to use the ‘Make Breakable’ shelf tool, which will set up an RBD object for dynamic fracturing.
Technical Discussion » RBD Fracture > POP Force > Advect with volume
-
- cwhite
- 741 posts
- Offline
Technical Discussion » set packed pieces Active
-
- cwhite
- 741 posts
- Offline
If you're looking at the impact data, the ‘primnum’ / ‘otherobjprimnum’ fields should tell you which packed primitives were hit, and you can then set the ‘active’ point attribute on those primitives.
Technical Discussion » Emit Packed RBD
-
- cwhite
- 741 posts
- Offline
I think it's probably easiest to do it in DOPs inside the same SOP solver that deletes the broken constraints.
Technical Discussion » Emit Packed RBD
-
- cwhite
- 741 posts
- Offline
That bug was fixed a few days ago:
For your second question, you want to make sure that you don't completely rebuild the constraint network each frame, since that could introduce glue bonds between objects that are close together on the current frame but weren't initially close together. One approach would be to run a SOP Solver over the constraint network's geometry, and add in new constraints for the objects that were just added to the sim.
Houdini 13.0.488: Fixed a bug in the Bullet solver that could cause initially overlapping objects to explode after an object was deleted from the simulation.
For your second question, you want to make sure that you don't completely rebuild the constraint network each frame, since that could introduce glue bonds between objects that are close together on the current frame but weren't initially close together. One approach would be to run a SOP Solver over the constraint network's geometry, and add in new constraints for the objects that were just added to the sim.
Technical Discussion » Altering glue strength in sop solver
-
- cwhite
- 741 posts
- Offline
Technical Discussion » how can replace a highres object for low res sim in bullet
-
- cwhite
- 741 posts
- Offline
A typical workflow for this is to use the “Create Points to Represent Objects” mode on the DOP Import SOP, and then use those points with the Transform Pieces SOP to transform the high-res geometry.
Houdini Lounge » Questions about Houdini Bullet
-
- cwhite
- 741 posts
- Offline
If you're using the Concave collision representation, you need to ensure that you have correct face normals on your geometry (in order to e.g. allow the Bullet solver to compute a correct volume for the collision shape). The Reverse SOP is useful if you have a model where the orientation of the polygons is reversed.
Technical Discussion » set point velocity + RBD packed object
-
- cwhite
- 741 posts
- Offline
The Geometry VOP is run after the Bullet solver, so the objects haven't been deactivated yet when the first frame is simulated. You can either turn off “Create Active Objects” on the RBD Packed Object DOP to make the objects initially inactive, or rearrange the order of inputs to the multisolver.
Houdini Learning Materials » Houdini ---> Alembic animation TO affect fractured object
-
- cwhite
- 741 posts
- Offline
I'm not sure why this isn't working for the RBD solver, but it does work with the Bullet solver. I've also turned off deforming geometry for the fractured object, since it isn't necessary for those objects and causes the Bullet solver to recompute the collision shapes on each frame.
Houdini Learning Materials » Houdini ---> Alembic animation TO affect fractured object
-
- cwhite
- 741 posts
- Offline
The simplest approach for something like this would be to use a Static Object DOP with “Use Deforming Geometry” enabled.
Houdini Indie and Apprentice » RBD Object Stopped
-
- cwhite
- 741 posts
- Offline
You can turn off “Enable Sleeping” on the RBD Object under the “Collisions/Bullet Data” tab. Otherwise, the solver tries to deactivate objects that are not moving or interacting with anything in order to improve performance.
Houdini Lounge » Questions about Houdini Bullet
-
- cwhite
- 741 posts
- Offline
Newly emitted objects should work the same way - the intersection check is performed whenever the Bullet solver sees a new object.
Houdini Lounge » Questions about Houdini Bullet
-
- cwhite
- 741 posts
- Offline
The name attribute is important, since each packed primitive is processed separately when creating the compound shapes. You just need a couple modifications to your file:
- The ‘name’ attribute that was set up by the copy1 node should be a primitive attribute, not a point attribute (similar to the output of a voronoi fracture node)
- The “Create Name Attribute” parameter on the Assemble SOP should be disabled, since that will overwrite the ‘name’ primitive attribute based on connectivity (this was part of the reason why you were getting a separate collision shape for each sphere). Normally you wouldn't need to modify this parameter, since the RBD Fractured Object shelf tool automatically disables that parameter if detects a ‘name’ primitive attribute on the geometry.
- The ‘name’ attribute that was set up by the copy1 node should be a primitive attribute, not a point attribute (similar to the output of a voronoi fracture node)
- The “Create Name Attribute” parameter on the Assemble SOP should be disabled, since that will overwrite the ‘name’ primitive attribute based on connectivity (this was part of the reason why you were getting a separate collision shape for each sphere). Normally you wouldn't need to modify this parameter, since the RBD Fractured Object shelf tool automatically disables that parameter if detects a ‘name’ primitive attribute on the geometry.
Houdini Lounge » Questions about Houdini Bullet
-
- cwhite
- 741 posts
- Offline
1) Since Houdini 12.5, the Bullet solver automatically detects objects that are initially overlapping and prevents them from colliding/exploding until they separate. If you're running into a case where this isn't working, then I'd suggest submitting a bug report [sidefx.com]
6) In Houdini 13, the “Create Convex Hull per Set of Connected Primitives” option is a much easier (and more powerful) way of setting up compound objects for the Bullet solver. It creates a collision shape for each set of connected primitives (using a box/sphere/tube/capsule shape if appropriate, and a convex hull shape otherwise) and then creates a compound collision shape with those child shapes. Unlike the BakeODE SOP, you don't need to do any extra work to set up the input geometry, and it isn't limited to only boxes, spheres, or tubes.
6) In Houdini 13, the “Create Convex Hull per Set of Connected Primitives” option is a much easier (and more powerful) way of setting up compound objects for the Bullet solver. It creates a collision shape for each set of connected primitives (using a box/sphere/tube/capsule shape if appropriate, and a convex hull shape otherwise) and then creates a compound collision shape with those child shapes. Unlike the BakeODE SOP, you don't need to do any extra work to set up the input geometry, and it isn't limited to only boxes, spheres, or tubes.
Technical Discussion » RBD Packed object workflow / Wrangle / geo vop
-
- cwhite
- 741 posts
- Offline
The Active Value DOP isn't really useful for packed objects, since it modifies the SolverParms/ActiveValue data for the DOP object and doesn't affect the ‘active’ point attribute on the geometry.
In the attached file, I've used a Geometry Wrangle DOP to fetch the Cd attribute from the other SOP network and then modify the ‘active’ point attribute. (the Geometry Wrangle node is basically the equivalent of a SOP Solver + AttribWrangle).
In the attached file, I've used a Geometry Wrangle DOP to fetch the Cd attribute from the other SOP network and then modify the ‘active’ point attribute. (the Geometry Wrangle node is basically the equivalent of a SOP Solver + AttribWrangle).
Technical Discussion » RBD Packed object workflow / Wrangle / geo vop
-
- cwhite
- 741 posts
- Offline
The key idea, really, is that everything is controlled by point attributes on the packed object's geometry. The SOP Solver + AttribWrangle combo is one way of editing those attributes, but you could also use e.g. a SOP Solver + AttribCreate/AttribCopy/etc if you're more comfortable with those nodes.
Also, all of the point attribute names are consistent with the attributes used for particle systems (and the Bullet solver recognizes point attributes such as ‘force’ and ‘torque’), so a lot of the new POP nodes in H13 can be used to manipulate objects in RBD sims as well.
For fetching attributes from other SOP networks, you should be able to use the point() function (http://www.sidefx.com/docs/houdini13.0/vex/functions/point) [sidefx.com] which can use op:full_path_to_sop to reference a SOP.
Also, all of the point attribute names are consistent with the attributes used for particle systems (and the Bullet solver recognizes point attributes such as ‘force’ and ‘torque’), so a lot of the new POP nodes in H13 can be used to manipulate objects in RBD sims as well.
For fetching attributes from other SOP networks, you should be able to use the point() function (http://www.sidefx.com/docs/houdini13.0/vex/functions/point) [sidefx.com] which can use op:full_path_to_sop to reference a SOP.
Houdini Indie and Apprentice » Attrib transfert-> DOP Activation
-
- cwhite
- 741 posts
- Offline
Technical Discussion » multiple packed objs and constraints
-
- cwhite
- 741 posts
- Offline
The names of the pieces you use to build the constraint network are different from the names of the pieces you're using in the simulation. For example, if you look at the constraint network's geometry, there are points with a name attribute like ‘top_plate0’, but the packed primitives in the simulation have names like ‘plate0’, so the Bullet Solver can't find some of the objects you're trying to attach constraints to.
The simplest fix is to change the ‘Name Prefix’ parameter on the Voronoi Fracture node from ‘top_plate’ to ‘plate’.
You can also turn off the ‘Create Name Attribute’ parameter on the Assemble SOP, since the previous node has already set up a ‘name’ primitive attribute for you (this can speed things up a lot if you have a large number of fractured pieces).
The simplest fix is to change the ‘Name Prefix’ parameter on the Voronoi Fracture node from ‘top_plate’ to ‘plate’.
You can also turn off the ‘Create Name Attribute’ parameter on the Assemble SOP, since the previous node has already set up a ‘name’ primitive attribute for you (this can speed things up a lot if you have a large number of fractured pieces).
-
- Quick Links