dynamic fragmentation, dissolving, and sand

   17316   16   1
User Avatar
Member
10 posts
Joined: Dec. 2009
Offline
I just started using Houdini today and am surprised how the initial understanding of the software was very easy to grasp after all the hype I heard about what a pain in the ass it is. That being said, some of the workflow is obviously different from apps I usually use (maya, realflow, shake, etc) so I do expect a decent amount of time to understand how to connect things together for dynamics.

I'm helping a friend put together a test and thought it would be a good chance to take a stab at houdini since I heard it's particle system was very robust compared to maya.

I've already done preliminary testing in maya using animated displacement maps to make things look like they dissolve initially. Now I'm doing R&D on how to dynamically fragment the model and then make those pieces disintegrate into sand and other particle-based FX which would use maya, houdini and realflow combo.

I wanted to know if there are any good starting points in houdini for these specific things:

1) dynamic fragmentation into large shapes

2) dynamic fragmentation into sub-shapes from the larger ones (pattern-based)

3) disintegrating the shapes into particles that behave like sand.

From past experience the actually disintegration could be in multiple steps where renders were masked and the particle pass done separate. In this case I'm not sure if that would work best, so I may need to have particles form the volume of the object while pulling color from a texture which would fake a solid object, and then maybe the interior volume of particles would have a procedural texture, or a volumetric one based on height or distance from a center point to get variation. and then maybe use forces or a texture map as a matte to drive which particles start to disintegrate away from the main form

Right now I am trying to work out which nodes should be used for doing sand simulation, if there are actual preset nodes that construct the tree or if it's something you need to do from scratch.

Any info will be valuable though as I plan on experimenting back and forth with different parts of this.

If there is no way to do dynamic fragmentation without extensive code writing/plug-in dev, then I would consider fragmenting with blastcode in maya and then bringing that into houdini somehow to do the particle work.

Thanks
User Avatar
Member
10 posts
Joined: Dec. 2009
Offline
Brief note: I do understand how to create particle systems already. I worked up a system with particles emitting from an object with 5 forces on them that collide with scene geo.

Just wanted you to know I'm not completely hopeless
User Avatar
Member
875 posts
Joined: Oct. 2008
Online
This may help with fracturing:

http://forums.odforce.net/index.php?/topic/9119-voronoi-dynamic-location-based-fracture-wip/ [forums.odforce.net]

For disintegrating sand you could perhaps turn your geo into a melting fluid and emit particles from it.
--
Jobless
User Avatar
Member
349 posts
Joined: Aug. 2006
Offline
There is a sand object and sand solvers inside houdini's dynamics networks (dops), unless its changed of late there wasn't really a lot of good documentation on it, if any. However sand sims can also be run by adjusting the look from the particle fluid solver in dops, from what Ive read.

If you search the forums for sand sims, there are a lot of dead ends unfortunatley.
User Avatar
Member
10 posts
Joined: Dec. 2009
Offline
ragupasta
There is a sand object and sand solvers inside houdini's dynamics networks (dops), unless its changed of late there wasn't really a lot of good documentation on it, if any. However sand sims can also be run by adjusting the look from the particle fluid solver in dops, from what Ive read.

If you search the forums for sand sims, there are a lot of dead ends unfortunatley.

Hi ragupasta

I'll start digging through the docs then. I'm not worried about the look which I know I can work out, but the behavior. Liquid systems behave differently from granular ones which are essentially tons of tiny rigid bodies. I tried a few tests with nParticles and RealFlow but the behavior was too liquidy and turned out looking like quicksand

Thanks for the advice though. I will start delving through the docs.

D
User Avatar
Member
10 posts
Joined: Dec. 2009
Offline
Soothsayer
This may help with fracturing:

http://forums.odforce.net/index.php?/topic/9119-voronoi-dynamic-location-based-fracture-wip/ [forums.odforce.net]

For disintegrating sand you could perhaps turn your geo into a melting fluid and emit particles from it.

This looks pretty good. Thanks for the link
User Avatar
Member
349 posts
Joined: Aug. 2006
Offline
blueVenom
I'm not worried about the look which I know I can work out, but the behavior.

There is a setting inside the fluid solver for changing the behaviour of the particles. In the fluid object there is a checkbox for something like “convert to grains”, that wants to be switched on. On the solver itself there is a checkbox on the internal forces tab called “enable elastic force”, enable that then use the “max springs” parameter.

Remember this is all from memory iirc, have a try and let us know. I would like to know much more about sand simulations.
User Avatar
Member
875 posts
Joined: Oct. 2008
Online
I've spend quite a bit of time on sand. The sandsolvers won't work well and using the grain options in the fluid is very very tricky to tune.

Interestingly, I have seen a realtime sand-solution that works purely on meshes a while ago but that has yet to make it into 3d apps.
--
Jobless
User Avatar
Member
10 posts
Joined: Dec. 2009
Offline
Hi Soothsayer

For me the tricky part here is trying to figure out the node connections that need to be made because I'm so used to Maya's workflow. I've been looking through the houdini docs but haven't found any kind of visual to show node connections for setting up a granular sim.

If you can provide any links to stuff like that or screenshots I would appreciate it.

Thanks
User Avatar
Member
875 posts
Joined: Oct. 2008
Online
Well, here is *something*. But I never figured out how to keep a stable volume in grain fluids. They always collapse into a puddle. I don't know if that is a bug a feature or just me.

Another way is to use rigid bodies with perhaps an ODE solver. That is only practical for small sims though.

Attachments:
grains.hipnc (280.7 KB)

--
Jobless
User Avatar
Member
10 posts
Joined: Dec. 2009
Offline
Soothsayer
Well, here is *something*. But I never figured out how to keep a stable volume in grain fluids. They always collapse into a puddle. I don't know if that is a bug a feature or just me.

Another way is to use rigid bodies with perhaps an ODE solver. That is only practical for small sims though.

Cool, thanks.

Yeah I was trying to set up a sim with rigid bodies but wasn't sure where to plug in the nodes and which ones to use. I had a freelancer try and write me a MEL script last year like this for maya where it would instance geometry to a particle sim, and on the first frame it would turn the instance into an object, make it rigid, inherit the values of the particles and then let the rigid solver take over. Unfortunately she didn't get it to work right. I even asked Next Limit about scripting a custom emitter in RealFlow to emit rigids but there is no way to combine solvers in RF.

I thought maybe in Houdini you can crate a series of objects to act as sand grains, make them rigids and then instance them in some special way to a particle system where they only pick up the initial values of the particles, i.e. velocity, direction, and then the rigid solver takes over. Being it's sand the objects would be quite small so you would only need a small number of faces on each. Either way, sand is going to simulate slowly but it would be nice to at least get some type of functioning node tree going.

Thanks for the file though, I'll give it a look. If you have any ideas relating to the above let me know. The project I'm working on doesn't have mass amounts of sand. Just certain parts would turn into sand and I wouldn't mind running several different sims, caching them, and then rendering them separately if needed.
User Avatar
Member
875 posts
Joined: Oct. 2008
Online
How about a combination of metaballs or particlefluid SOP and a pop network. It's speedy and may be enough for what you want?

Attachments:
meltsand.hipnc (72.1 KB)

--
Jobless
User Avatar
Member
10 posts
Joined: Dec. 2009
Offline
Sounds great but doesn't make much sense to me as far as how to do it.

I still need to wrap my head around how these things connect. I'm so used to maya where almost anything connects to anything and there is no “spaces” to contend with so you can have access to everything in one place. You still have transform nodes and shape nodes but it seems like Houdini creates extra containers and that's what throws me off. Most nodes also have tabbed attributes which makes things harder to find, I'm used to Maya's vertical approach for most nodes.

Even changing the particle type and size is not intuitive in Houdini at all. There are several settings in different tabs that seem to affect it and they are not categorized well. I think that once I do figure this out I'm going to customize the nodes so I can have everthing in one place.

I'm going to create 2 similar scenes in Maya and houdini and show you the ways the nodes are setup. Maybe then you can explain how I can achieve what I'm trying to because right now it's just making my brain hurt .

Thanks

D
User Avatar
Member
875 posts
Joined: Oct. 2008
Online
Nodes are context specific. Some only appear when, for example, you build geometry (SOP) or deal with shaders (SHOP). You can see what context you are in in the bottom right node window . You can often create a container in one context to include nodes of another context. For example SOPs in DOPs. That's just for convenience though and not necessary. You can also create your own containers (subnets) to make large complicated trees more manageable. Some of the build-in nodes also contain other nodes. For example the shatter SOP. So, you can dive in and change it if you want to.

Not all the parameters are exposed on the nodes. You can customize it or add your own parameters (some nodes have far to many to display by default). Click on the little gear icon and select “Edit Parameter Interface” to see what I mean.

There's also the details view to see what kind of info each node holds (attributes)
--
Jobless
User Avatar
Member
10 posts
Joined: Dec. 2009
Offline
thanks for the info.

I'm going to keep digging through help docs, the tutorials and see if I can learn more of the workflow. Will post anything I manage to get working.
User Avatar
Member
875 posts
Joined: Oct. 2008
Online
Another thing to try is to make a low res rigid body sim and use the result to create a surface.

You'd have to collapse it from the top to get a convincing result. Presumably the voronoi based shatter in combination with a glue rb, and then particle emission could work well.

Attachments:
rb.hipnc (136.7 KB)

--
Jobless
User Avatar
Member
875 posts
Joined: Oct. 2008
Online
A little illustration of what I meant.

Attachments:
collapse.mov (2.6 MB)

--
Jobless
  • Quick Links