Jump to content
jim c

Animating a rbd object

Recommended Posts

I've got an object that I'd like to dent. I created a sphere, a ground plane, and a tube. I make the tube and RBD static. make the ground a RBD static object, and make the Sphere a cloth object. If I let the sphere drop ontop of the tube, it deforms. HOwever if I animate the sphere at the Object level, it ignores the animation. There's obviously something stupid I'm missing?

What I want to do is have a moving car hit a stationary object ( a sword like shape) and have it deform as it hits the object.

Also, are there any good tutorials or help files on crumpling/denting stuff? There's an older Masterclass from 2009, but when the files are loaded up in H13/H12 they don't seem to actually work, at least so far. If I look in the H13 online search of help, there's nothing for "dent" or "crumple". I did find an example for the Volume Preserving Solid using the Finite Element Solver, but that also doesn't seem to pick up Object level animation.

Share this post


Link to post
Share on other sites

You need to check "Use Object Transform" on the RBD object DOP.

As for cloth. A lot has changed since H9, especially in the latest version. There is a CMI tutorial - http://cmivfx.com/store/563-houdini+cloth+techniques

There is also a masterclass from SideFx' cloth developer, Michiel Hagedoorn - http://www.sidefx.com/index.php?option=com_content&task=view&id=2406&Itemid=132

Share this post


Link to post
Share on other sites

Cloth doesn't have "use object transform" option.

You can use follow target on shelf menu. if you want move cloth object.

But in your case, i recommend switch solver rbd to cloth.

here is my example video and hip file.

I used switch solver RBD > CLOTH > RBD again.

It's not perfect but it may helps you. :)

20131105_bullet_deform.hip

20131105_flipbook_bullet_deform.mov

Share this post


Link to post
Share on other sites

Thanks guys. Daehuck, I tried you example last night, the movie looks just like what I'm trying for. However the scene seems to just hang on simulating frame 14 or so, I let it run for over 5 minutes and still nothing. Is the sim just super slow (I've got 12 Gb RAM, Quadro 4000, and 8 cores @ 3Ghz), or is there something I'm missing?

  • Like 1

Share this post


Link to post
Share on other sites

Thanks guys. Daehuck, I tried you example last night, the movie looks just like what I'm trying for. However the scene seems to just hang on simulating frame 14 or so, I let it run for over 5 minutes and still nothing. Is the sim just super slow (I've got 12 Gb RAM, Quadro 4000, and 8 cores @ 3Ghz), or is there something I'm missing?

oh, there's nothing u missed...

cloth sim is very slow...

I also taken about 5~6min

because 14frame is start frame of cloth sim.

so, you can speed up by adjust the polygon resolution.

downsizing the polygon resolution and

readjust the attributes range, because they are

based on pointnumber.

Share this post


Link to post
Share on other sites

OK so I've had H13 crash a bunch of times on me roday and yesterday, os I'm going with H12.5 for now. I've been through Peter Qs DOPs Keyframes tutorials - some fantastic stuff in there. I thought I'd be able to use an rbd active key node to switch between active and in active state. It works, sort of. The ball goes zooming along the Z axis (which I've key framed), then when the active state changes to 1 on frame 50, it IMMEDIATELY stops moving along Z and drops to the ground plane as cloth. It seems like it's not taking into account the velocity? I can see a vel parameter in the details view of the DOP network. Is there something else I'm missing?

Share this post


Link to post
Share on other sites

I think there is no velocity field, if you just animated the geometry. Why don't you use initial velocity(to Z) or make point have velocity in sop level and bring them into dop and check "inherit velocity from point velocity".

Share this post


Link to post
Share on other sites

@daehuck, yep,that's a huge difference, I see what's going on now.

However one thing I'm fuzzy on is the actual DOPs netwwork - this is *completely* different than what the Solid Object shelf tool comes up with. How did you figure all this out? Have you done a lot of DOPs stuff before (I haven't at all, so I'm new to how it all works)?

Share this post


Link to post
Share on other sites

I played around with this a bit more, trying to understand how this stuff works. So bear with me if this sounds patently obvious, I'm sort of thinking out loud here...

From what I can tell hte network creates three main objects,

1) hte cloth object used for the denting/deformation

2) the 1st rbd object to pull in the key frame data from the Object level

3) the 2nd rbd object to take over when the cloth deformation is done

the 1st rbd object has an active setting such that it's active from frame 1 to the frame just before the collision.

the second rbd object is set to not be solved till a few frames AFTER the collision

these three are all merged together. Then a solver switch is added (I'm not sure why this is necessary, since you could just animate the actual switch later on?) that sets the SolverParms/SwitchValue to 1 all the time with the exception of a few frames where it's 0 during the collision of the bullet with the wall.

Then two delete DOP are added to get rid of the cloth object and the first RBD object once the appropriate frames have been hit.

Finally this is all sent into the first input of a multui solver.

Two solvers are added, an FEM sovler and a RBD solver. These are wired into a switch. Presumably the switch value is derived from the SolverParms/SwitchValue defined earlier. this is then fed into the second input of the multi solver.

So if I understand things, this basically allows us to use RBD solvers most of the time, just before the collision, and shortly thereafter for the rest of the sim. The cloth solver gets switched into play for just a few frames to crumple up the bullet.

If this is all correct is there any reason you couldn't employ a set up like this in H12? Only instead of using the FEM solver, just sub in the Cloth Solver? I tried to duplicate this, but it doesn't seem to work, and I don't understand why it doesn't?

multi-solver deform.hipnc

Share this post


Link to post
Share on other sites

OK never find, found the problem. I missed setting up the creation frame for the cloth object. Once that was setup, it all worked.

Share this post


Link to post
Share on other sites

Here's another question. IN the example here, therer's an initial velocity ("v") vector being set in the sphere's Geo container, in SOPs. As far as I understand thigns, that's being used in the Cloth object to move the cloth object forward. Is there some way that this could be done in DOPs, so that the attribute doesn't have to be manually set and tinkered with? In other words, have this value be picked up from the velocity that comes from the key frame animation?

Share this post


Link to post
Share on other sites

Here's another question. IN the example here, therer's an initial velocity ("v") vector being set in the sphere's Geo container, in SOPs. As far as I understand thigns, that's being used in the Cloth object to move the cloth object forward. Is there some way that this could be done in DOPs, so that the attribute doesn't have to be manually set and tinkered with? In other words, have this value be picked up from the velocity that comes from the key frame animation?

Well... I think you understand well. and i'm a beginner too, but i had a chance to get a very nice example hip file... I applied it.

there is an initial velocity "v" and you're right... cloth object have to move forward Z axis,,, and I don't know too, how to do it in Dops.

But I think there is a few problem cause it is switched into RBD, so cloth object's time is only 3~4 frames...

And switch solver is used to switch the solvers,,, I think you already know this...

offset is 1 → 0 → 1

1 is RBD solver 0 is Cloth solver

And my settings are not perfect cause i'm a rookie

I solved your hip file...you have to change cloth object's creation time when object is just to collide with static object.

I added my file and nice example hip file I studied....

Good luck!

multi-solver deform_solved.hipnc

switch_solver_test.hip

Share this post


Link to post
Share on other sites

Thanks daehuck. Yeah I think I figured out hte switch part, I'm just curious about why it was done that. It's actually kind of elegant, but never in a million years would I have thought to do that way! :)

I'm playing around with this some more. And came up with some interesting changes. I made a simple car like shape with a hood, and grill, plu car body. Created separate rbd and cloth objs for all three. That all works great. Then used a series of DOP imports to bring in the various components back into the SOP container and used that to deform the original with a cloth capture and cloth deform SOP.

Now, when I run these through the Cloth solver it obviously takes a bit longer, but I noticed that if I changed the geometry for hte cloth to solve some interesting things happen. Instead of using the original 3D object I tried remeshed it using the Remesh SOP. This worked OK on the first frame or two, but then exploded points out all over in the later frames. If I used a single plane, like so:

post-4235-0-95814400-1384099778_thumb.jp

then it worked out a lot better

post-4235-0-49178500-1384100192_thumb.jp

Another question, how do you get it to tear? And if your using a clothe deformer, will it tear up your source geo too?

carsim2.hipnc

Share this post


Link to post
Share on other sites

Thanks daehuck. Yeah I think I figured out hte switch part, I'm just curious about why it was done that. It's actually kind of elegant, but never in a million years would I have thought to do that way! :)

I'm playing around with this some more. And came up with some interesting changes. I made a simple car like shape with a hood, and grill, plu car body. Created separate rbd and cloth objs for all three. That all works great. Then used a series of DOP imports to bring in the various components back into the SOP container and used that to deform the original with a cloth capture and cloth deform SOP.

Now, when I run these through the Cloth solver it obviously takes a bit longer, but I noticed that if I changed the geometry for hte cloth to solve some interesting things happen. Instead of using the original 3D object I tried remeshed it using the Remesh SOP. This worked OK on the first frame or two, but then exploded points out all over in the later frames. If I used a single plane, like so:

post-4235-0-95814400-1384099778_thumb.jp

then it worked out a lot better

post-4235-0-49178500-1384100192_thumb.jp

Another question, how do you get it to tear? And if your using a clothe deformer, will it tear up your source geo too?

yeah. remesh sop is used in fem solver's preset(through shelf)

and tearing is very difficult in H13...actually I don't know about that...

there is a topic I added weeks ago but nobody answers to me.

In H12.5 you can tear by fracturethreshold attribute

make grid and create attribute "fracturethreshold" value 1

then paint points which you want to fracture and make them value 0

and make them as a cloth object and In DOP there is a cloth solver and check enabling fracturing.

and then simulate, it will fracture. but it is fractured in 4ways... I think it is related with vertex attribute but i have no idea...

if you find any solutions tell me :)

Edited by daehuck

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×