Wednesday, January 9, 2013

Houdini Fracture Systems 1

So, it's after the winter holidays and it's time to get back to work full steam. Today was my first all-nighter in the labs and I have started with my Major project work. As the FX-TD on the project I have to take care of simulating fractures, RBD, smoke, dust and fire mainly.

At the moment I am developing a destruction system. I have started by develping a particle-based debris system. It is a very fundamental system that emit particles and instances various pieces of debris geometry on to individual particles from a debris library.  This is the output for tonight:

A particle based debris system

The first part of the development cycle was to create a debris system library. For this I pre-fracture the geometry using the Voronoi fractures. However the Voronoi fractures give a very uniform look as can be seen below.

Pre-fracturing with default Voronoi fractures

To counter this problem and to be able to have more variation in the look of the debris pieces, I used the paint SOP to scatter points. This gave me a lot of control on my pre-fracturing.

Painting destruction

With painting done, I could go into the parameters of the scatter SOP and play with the attribute bais and control how closely I wanted the scatter points to follow the paint. The pictures below show point scattering with attribute bias values of 0, 0.6 and 1. At 0, scatter completely ignores the colour attribute Cd and points are scattered as before. At 0.6, more points are scattered in the painted area, giving a tighter distribution of points. At 1, all the points are scattered in the painted area.

Attribute Bias = 0.0

Attribute Bais = 0.6

Attribute Bias = 1.0

After the operation I added a foreach SOP and a delete SOP, made a couple of adjustments and exported the geometry as .bgeos. This generated a debris library for me.

After the library was ready. I began developing a POP network. To the particles in this network, I instanced the geometry from the debris library. Here is a snapshot of the result of that process:

Debris geometry being instanced onto the particle system

That is all for today. I will take it further tomorrow and add some rotation to the particles. Then I would add this POP based debris system into a larger destruction system.