Game Development Reference
In-Depth Information
collision will produce a collision where kinetic energy is preserved and e = 1. A fully inelastic collision
will produce a collision where kinetic energy is completely lost with e = 0. The e in our equation
is calculated from a ratio of the final relative velocities of our objects after collision to the relative
velocities before the collision. This gives a good idea of how much kinetic energy is preserved after
the collision.
Force = mass1 * acceleration1
-Force = mass2 * acceleration2
E = -(V1Final - V2Final) / (V1Initial - V2Initial);
Replace acceleration with variables for the change in velocity. We have three equations and three
unknowns. The unknowns are V1Final , V2Final , and Force generated by the collision of these two
objects.
Force = mass1 * ( V1Final - V1Initial )
-Force = mass2 * ( V2Final - V2Initial )
e = -(V1Final - V2Final) / (V1Initial - V2Initial);
Solve the first equation for V1Final .
Force/mass1 = mass1 * ( V1Final - V1Initial )/mass1
Force/mass1 = V1Final - V1Initial
Force/mass1 + V1Initial = V1Final
Solve the second equation for V2Final .
-Force/mass2 = mass2 * ( V2Final - V2Initial ) / mass2
-Force/mass2 = V2Final - V2Initial
-Force/mass2 + V2Initial = V2Final
Plug V1Final and V2Final into the equation for the coefficient of restitution, or e.
e = -(V1Final - V2Final) / (V1Initial - V2Initial);
-e(V1Initial - V2Initial) = V1Final - V2Final
-e(V1Initial - V2Initial) = Force/mass1 + V1Initial - (-Force/mass2 + V2Initial )
-e(V1Initial - V2Initial) - V1Initial = Force/mass1 + Force/mass2 - V2Initial
-e(V1Initial - V2Initial) - V1Initial + V2Initial = Force/mass1 + Force/mass2
-e(V1Initial - V2Initial) - V1Initial + V2Initial = (1/mass1 + 1/mass2) Force
Substitute VRelative = V1initial - V2Initial .
-e(VRelative) - VRelative = (1/mass1 + 1/mass2) Force
VRelative( -e -1 ) = (1/mass1 + 1/mass2) Force
-VRelative( e + 1 ) = (1/mass1 + 1/mass2) Force
-VRelative( e + 1 ) / (1/mass1 + 1/mass2) = Force
Thus, the final forces that act on the objects are
ForceAction = -VRelative( e + 1 ) / (1/mass1 + 1/mass2)
ForceReaction = - ForceAction
 
Search WWH ::




Custom Search