Categories
FMP

FMP: DESTRUCTION FX: RIGID BODY AND CONSTRAINTS

To ensure a successful Rigid Body stimulation, it is crucial to begin with a clean and error-free body. As my project is centered around Destruction, I meticulously designed a basic building structure in Houdini to yield maximum output from the simulations. I employed various tools in Houdini, such as Bevel, Boolean, Extrude, Copy nodes, attribute editors, and more, to create the building. This enabled me to craft a highly detailed and precise model that can withstand the complex simulations that will be conducted. The building structure is designed to be robust and sturdy, which will make it an ideal candidate for simulating various types of destruction scenarios.

building
Workflow of Building Modelling

To begin with RBD, the first step is to Fracture the geometry and create glue constraints so that the geometry sticks together. This is the workflow of creating RBD in Houdini:

To create points for destruction, I used the ISO Offset node which gives me a volume on which I could scatter points. And after we connect this points to Voronoi Fracture we get the desired Fracture. There are various techniques by which we can create such fractures such as:

  1. The Boolean Technique, in which we copy various places on to the points created and it cuts the geometry to create fracture.
  2. Material Fracture: In this technique, the node itself create the points, fracture and also all the constraints required for the RBD Stimulation. This is the most user friendly and easy to learn technique. But the reason I didn’t use this technique was that it was tooo straight forward, due to which it limits me from learning various new concepts.
  3. Voronoi Fracture: This technique requires various points as mentioned before, and it creates Fracture as per the points provided. And hence this was one of my reason to use this technique as it gave me much more control for creating fracturing pieces.

After this step, I had to assign Active part and Inactive parts, to this fractured geometry. This is one crucial step in RBD stimulations as it helps the stimulation by not calculating factors that are not required. And hence, I assigned (by grouping the points) few part of the building that I do not wish to destruct.

After this step, we have to assemble the fractured as this step helps in packing the geometry in 1 piece, reducing the burden on the system. And after this step we get our desired RBD Fracture geometry.

Carrying forward to the next part GLUE CONSTRAINTS. As the name suggest, Is helps is gluing the fractured geometry, which helps in keeping the pieces together rather than falling apart. These glue constraints can be broken through various factors such as external forces, secondary geometry, static deforming objects, etc. For this project we have gone with forces, which we will see in other chapter.

These glue constraints are generally created with the help of the fractured geometry, as we require the points on the edges to carry out the process. After deleting all the unnecessary attributes such as color, name, etc. we add node called as Connect adjacent pieces, which as the name suggests, connects neighboring components together. After this, in attribute wrangle I added vex by which the constraint gets named and assigned its type. The vex was as follows:

s@constraint_name = “Glue”;
s@constraint_type = “all”;


where s stands for ‘String’ and @ stands for ‘assign to’.

After this step I added cluster (variations) to the constraint by which i was able to have internal as well as external strength for these glue constraints. The VEX utilised for this instance was:

i@external = @strength == ch(“threshold”);

where i stands for ‘intiger’ and ch(“thresholds)

Clustered Fracture Geometry
Inactive Point Selection
Glue Constraints

Leave a Reply

Your email address will not be published. Required fields are marked *