Jump to content
Juraj

Bullet: small objects not stopping to move

Recommended Posts

Hello,

I'm playing with bullet dynamics in Houdini. But I'm having quite often one problem - strange motion in e.g. small shards on ground plane. They don't stop moving even after few seconds after they fell on the floor. They are not changing position but just slightly rotating. This motion seems to go on and on...

According to docs Linear/Angular Treshold parameter in RBD Packed Object should fix it, but it doesn't seem to have any effect.

Have you experienced this type of error and if - have you solved it?

 

Thanks

Share this post


Link to post
Share on other sites

try lowering your collision padding.

If you switch on display collision geo in dops I bet the small pieces look very rounded (because collision padding is too low)

Will change the look of your sim though :(

best to avoid siming really small pieces.

  • Like 1

Share this post


Link to post
Share on other sites

Hey everyone,

 

I have the problem too...

And if everyone says you should work in scale, then this happens like really often...

 

So what I did was: Scale everything up by a factor of 10 and then after the Sim scale it down by the same factor.

 

Would that change the accuracy? 

Is there any "good" work around to this?

Share this post


Link to post
Share on other sites

try lowering your collision padding.

If you switch on display collision geo in dops I bet the small pieces look very rounded (because collision padding is too low)

Will change the look of your sim though :(

best to avoid siming really small pieces.

 

Hi. I've tried lowering collision padding. It improved simulation a little bit but when I set it really low, glued objects became unstable and started "vibrating".

Is there a better solution? I'm trying to simulate wood shattering so I need small pieces. Is there any way how to do it in bullet or houdini rbd solver is the only way?

 

 

 

Hey everyone,

 

I have the problem too...

And if everyone says you should work in scale, then this happens like really often...

 

So what I did was: Scale everything up by a factor of 10 and then after the Sim scale it down by the same factor.

 

Would that change the accuracy? 

Is there any "good" work around to this?

 

Hi I tried your solution, but it really affected the look of my simulation. Everything was slower and I had to tweak all constraints parameters to get similar look. I hope there is another solution.

 

Anybody can help me? :) It seems like basic thing to do in Houdini but I cannot figure it out.

Share this post


Link to post
Share on other sites

Have you tried turning the sim off when you've reached a good stopping point? Either via keyframe active or just cache it up to a certain frame. I'd also play around with the substeps in the rbd solver, but its not really higher number = better, you just gotta try random numbers. For example if you just drop a default voronoi fracture sphere with 10 substeps it will have these pieces in the middle that just stand and spin forever, putting it on 25 will make them drop and stop almost perfectly, combining that with turning off the sim = works great. But 30 substeps make it behave almost like default. So try and play around with those 2 things?

Share this post


Link to post
Share on other sites

Have you tried turning the sim off when you've reached a good stopping point? Either via keyframe active or just cache it up to a certain frame. I'd also play around with the substeps in the rbd solver, but its not really higher number = better, you just gotta try random numbers. For example if you just drop a default voronoi fracture sphere with 10 substeps it will have these pieces in the middle that just stand and spin forever, putting it on 25 will make them drop and stop almost perfectly, combining that with turning off the sim = works great. But 30 substeps make it behave almost like default. So try and play around with those 2 things?

 

Yes, I finally found good combination of substeps and collision padding parameters and deactivating them when needed.

 

I'm wondering if there is a way to per-piece deactivation when certain velocity treshold is reached. For example having sop solver, which will compare object's velocity and if it is smaller than treshold, it will turn it off.

Share this post


Link to post
Share on other sites

Well you have the rbd auto freeze in dops that will do that. I found to an extent bullet works, but being based on a fast and dirty games solver it's not great for everything. Try to the auto freeze though.

Share this post


Link to post
Share on other sites

Well you have the rbd auto freeze in dops that will do that. I found to an extent bullet works, but being based on a fast and dirty games solver it's not great for everything. Try to the auto freeze though.

 

Yes, RBD is probably more accurate. And RBD Auto Freeze works only with rbd objects. But I chose to play with bullet because you can dynamically create complex constraint networks and use benefit of packed primitives. But it probably needs more tweaking to get satisfactory results.

Share this post


Link to post
Share on other sites

thanks for this Juraj! one question...is the wrangle cooked every substep?

edit : yep it's per substep

Edited by radurock

Share this post


Link to post
Share on other sites

I have two recommendations. First, make sure that you have no extra forces in your sim creating a perpetual motion for the shards. Disable all other forces other than gravity. Does the sim come to a stop now? If it does, you are probably adding forces in an incorrect way, creating that perpetual motion. Second, I increased the Angular and Linear Threshold parameters. This increases the speed at which the shards are considered not-moving. This worked best for me.

Share this post


Link to post
Share on other sites
On 07/10/2014 at 9:02 AM, henrik.g said:

Hey everyone,

 

I have the problem too...

And if everyone says you should work in scale, then this happens like really often...

 

So what I did was: Scale everything up by a factor of 10 and then after the Sim scale it down by the same factor.

 

Would that change the accuracy? 

Is there any "good" work around to this?

I generally find the scaling by 10 solution works well for me - not had any noticeable accuracy issues with it. Is a bit annoying having to adjust all forces and colliding objects etc though.

I usually combine this method with some wrangles which drag and deactivate the pieces once they get too slow (similar to what Juraj detailed above).

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

×