Restitution

Topics: User Forum
Jun 25, 2009 at 10:15 PM

Hello guys!

I'm kind of a noob at this and would need some help with some bouncing objects. From what I understand it's the Geom.RestitutionCoefficient which specify how bouncy a object is. 

I've got a ball with RestitutionCoefficient set to 1.0f and then two types of walls with RestitutionCoefficient set to 0.1f and 0.5f. I want the ball to bounce more when colliding with the "0.5-wall" than the "0.1-wall". But it doesn't.

It's like a ball wont bounce in sand, but the ground is still fine. What could I do wrong? Am I right about the Restitution?

Great engine btw :D

 

Coordinator
Jun 25, 2009 at 11:09 PM

You are correct; RestitutionCoefficient is the one you want.

Setting the RestitutionCoefficient to 1 will make the object bounce perfectly. But it only does so if the geometry it hits also has a RestitutionCoefficient of 1. You should be able to have different bounce when they have different restitution coefficients, you might not be able to tell the difference tho.

You also have to remember that bouncing off a wall compared to the ground is not the same reaction wise. RestitutionCoefficient is basically the factor that tells how much of the impactforce should be in the reaction when two objects collide. If you have gravity on, there will always be more force towards the ground than off the walls.

Jun 25, 2009 at 11:41 PM

What genbox said! have you tried reversing the retitution coefficients? i.e. making the one type of walls restitution coefficint higher then the other and setting the ball's to a more normal one?

Jun 25, 2009 at 11:50 PM

Yes I tried, works a bit better. But it's still hard to get the right values :)

Is it okay to set the retitution coefficients negativ?

Coordinator
Jun 26, 2009 at 12:03 AM

The value should be in the range of 0 to 1. A value of 0 means no restitution at all, 1 means perfect bounce.

You can have less than 0 or more than 1, it's up to you, but 0-1 ensures a stable and consistent simulation.

Jun 26, 2009 at 12:35 AM

is there any way to make a geom so that it doesn't bounce, but rather, absorbs force on impact?

Coordinator
Jun 26, 2009 at 12:37 AM

Yes, if you have a restitution coefficient of 0, it will not bounce at all.

Is that what you are looking for?

Jun 26, 2009 at 12:47 AM

I guess since they get averaged together, it is like the one is absorbing the impact of the other.

It's just that I had the walls RC at 1 and a balls RC at 0, and I wanted the ball to never, ever bounce. for the most part it was fine, but if i hit something at an angle, sometimes it would bounce.

I solved it by setting RC to 0 for everything, so I guess that's fine.  I just thought it'd be sweet if a Geom had a NoBounce switch or something.