Capturing the physics of bouncing in a simulation

  • Thread starter Thread starter mindbreaker
  • Start date Start date
  • Tags Tags
    Physics Simulation
AI Thread Summary
To simulate bouncing physics in a C++ engine, assign an "elasticity" property to the object, which quantifies energy recovery upon collision. Elasticity values range from 0 to 1, where 1 indicates a perfect bounce back to the original height and 0 means no bounce. Most objects have intermediate elasticity, leading to exponentially decreasing bounce heights. Friction complicates the scenario by introducing torque and converting some translational energy into rotational energy during glancing impacts. Understanding these principles will help create realistic bouncing behavior for various textures.
mindbreaker
Messages
1
Reaction score
0
hi,
srr if this isn't the wright place to post this...

I'm working on engine (i'm a programer , c++) and I'm stuck at bouncing...

I have an object (repressented by a sphere) at an unknow hight, with an unknow mass and I drop it, so gravity does it job and it starts to fall down

now , when there is a collision with the floor, I want the object to bounce but dependent of it's texture ( ex.: tennisball - bowl ball ) and physical correct ...
how is this done ? I remember I saw this (almost 8 years ago :-p) at school ...

note 1: friction (etc) can be ignored (for now , so if this isn't must harder i request this already )
note 2 : this is something that should take place at Earth and at a normal height (so not 150 km above into the sky ) ...

thx anyway :cool:
 
Physics news on Phys.org
You can give the object a property called "elasticity". "Elasticity" is a measure of the amount of kinetic energy that can be recovered when the object has deformed due to collision; springier substances that can return to their original shape are more elastic (bowling balls, tennis balls, steel balls and rubber balls are all very elastic; balls of Silly-Putty are very inelastic).

Practically speaking, elasticity is a number between 0 and 1 that represents the fraction of energy retained in collisions. A ball of elasticity 1 will bounce up to its original height every time; a ball of elasticity 0 will fall and then stick to the ground, without bouncing at all. Most objects are somewhere in between; a ball of elasticity 0.8 will always bounce up to 80% of its previous height (thus, the bounces will decrease in height exponentially).

In the case of nonzero friction, you have an additional complication: a ball striking a surface at a glancing angle will, due to friction, experience a torque causing it to spin. Thus, some of the previous translational kinetic energy gets converted into rotational kinetic energy.
 
I have recently been really interested in the derivation of Hamiltons Principle. On my research I found that with the term ##m \cdot \frac{d}{dt} (\frac{dr}{dt} \cdot \delta r) = 0## (1) one may derivate ##\delta \int (T - V) dt = 0## (2). The derivation itself I understood quiet good, but what I don't understand is where the equation (1) came from, because in my research it was just given and not derived from anywhere. Does anybody know where (1) comes from or why from it the...
Back
Top