Jump to content
kfu

RBD sim from Miyazaki anime

Recommended Posts

Hey guys, I found this gif animation was very interesting, so decide to give it a try. Basically set initial vel for each packed pieces and emitter them at origin, it works fine if I set a large initial velocity. But if I trying to low the velocity to achieve the stacking/layering effect shown in the gif, the packed pieces get penetrated and won't stack up. Anyone know how to fix this? Or am I doing it wrong,maybe using grain?  Any help please?

 

 

IMG_0892.GIF

gold.hipnc

Share this post


Link to post
Share on other sites

the point attribute i@found_overlap might help you here. setting it to 1 will resolve interpenetration.

also take a look at this video from entagma: 

 

  • Like 1

Share this post


Link to post
Share on other sites

Thanks toadstorm, that reset id thing works like a charm! Also I found it hard to get the look right,the  the pieces seems won't stack up like a little mountain but keep rolling down instead.

Share this post


Link to post
Share on other sites

So I improve a bit but still it's nothing like the 2d animation,I'm out of ideas of how to improving it. It feels unstable compare to the gif animation. Can anyone take a look at my file and give any tips or suggestions? Maybe the way I'm doing it is not the correct way? 

gold.hipnc

Share this post


Link to post
Share on other sites

I think what might be happening here is that you're sourcing in new geometry, and it's overlapping with existing rigid bodies in the sim. This causes the existing bodies to be shoved out of the way, which introduces unwanted momentum. 

You could try scaling down the instances when they're first generated, and then slowly scaling them up over their lifetime until they reach their maximum scale. You could do this inside your SOP Solver DOP. You'd need to make sure that the id of each packed RBD is reset to -1 every timestep so that the collision geometry is recomputed. I think this would also make your simulation look a little more like that original Spirited Away sequence, since that pile started with tiny little nuggets that magically grow over time.

Share this post


Link to post
Share on other sites

You can use a combination of these 2 methodologies to achieve that. Even the first one will be sufficient -

 

 

 

Share this post


Link to post
Share on other sites

here's my example scene file for this effect. i merge new RBDs into the sim every fifth frame via a SOP Solver, then scale up the transform primitive intrinsic for any primitives where pscale < max_pscale.

 

grow_packed_rbds.hiplc

  • Like 3

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

×