In the context of classical mechanics simulations and physics engines employed within video games, collision response deals with models and algorithms for simulating the changes in the motion of two solid bodies following collision and other forms of contact.
Two rigid bodies in unconstrained motion, potentially under the action of forces, may be modelled by solving their equations of motion using numerical integration techniques. On collision, the kinetic properties of two such bodies seem to undergo an instantaneous change, typically resulting in the bodies rebounding away from each other, sliding, or settling into relative static contact, depending on the elasticity of the materials and the configuration of the collision.
The origin of the rebound phenomenon, or reaction, may be traced to the behaviour of real bodies that, unlike their perfectly rigid idealised counterparts, do undergo minor compression on collision, followed by expansion, prior to separation. The compression phase converts the kinetic energy of the bodies into potential energy and to an extent, heat. The expansion phase converts the potential energy back to kinetic energy.
During the compression and expansion phases of two colliding bodies, each body generates reactive forces on the other at the points of contact, such that the sum reaction forces of one body are equal in magnitude but opposite in direction to the forces of the other, as per the Newtonian principle of action and reaction. If the effects of friction are ignored, a collision is seen as affecting only the component of the velocities that are directed along the contact normal and as leaving the tangential components unaffected
The degree of relative kinetic energy retained after a collision, termed the restitution, is dependent on the elasticity of the bodies‟ materials. The coefficient of restitution between two given materials is modeled as the ratio
e\in[0..1]
e
Another important contact phenomenon is surface-to-surface friction, a force that impedes the relative motion of two surfaces in contact, or that of a body in a fluid. In this section we discuss surface-to-surface friction of two bodies in relative static contact or sliding contact. In the real world, friction is due to the imperfect microstructure of surfaces whose protrusions interlock into each other, generating reactive forces tangential to the surfaces. To overcome the friction between two bodies in static contact, the surfaces must somehow lift away from each other. Once in motion, the degree of surface affinity is reduced and hence bodies in sliding motion tend to offer lesser resistance to motion. These two categories of friction are respectively termed static friction and dynamic friction.
It is a force which is applied to an object by another object or by a person. Thedirection of the applied force depends on how the force is applied.
It is the support force exerted upon an object which is in contact with anotherstable object. Normal force is sometimes referred to as the pressing force since itsaction presses the surface together. Normal force is always directed towards theobject and acts perpendicularly with the applied force.
It is the force exerted by a surface as an object moves across it or makes an effortto move across it. The friction force opposes the motion of the object. Friction resultswhen two surfaces are pressed together closely, causing attractive intermolecular forcesbetween the molecules of the two different surface. As such, friction depends uponthe nature of the two surfaces and upon the degree to which they are pressed together.Friction always acts parallel to the surface in contact and opposite the direction ofmotion. The friction force can be calculated using the equation.
A force
f(t)\inR3
t\inR
m\inR
\lbrackt0,t1\rbrack
p(t)=mv(t)
v(t)
j\inR3
t1 | |
j=\int | |
t0 |
fdt
For fixed impulse
j
t1 → t0 ⇒ \left|f\right| → infty
f
0
t0
\lim | |
t1 → t0 |
t1 | |
\int | |
t0 |
fdt
exists and is equal to
j
The effect of the reaction force
fr(t)\inR3
[t0,t1]
jr(t)\inR3
jr=\int
t1 | |
t0 |
frdt
By deduction from the principle of action and reaction, if the collision impulse applied by the first body on the second body at a contact point
pr\inR3
jr
-jr
\pmjr=\pmjr\hat{n
jr\inR
\hat{n
-\hat{n
\hat{n
Assuming the collision impulse magnitude
jr
v'1=v1-
\hat{n | (1a) | |||||
v'2=v2+
\hat{n | (1b) |
where, for the
i
vi\inR3
v'i\inR3
Similarly for the angular velocities
\omega'1=\omega1-jr
(r1 x \hat{n | (2a) | ||||||||
\omega'2=\omega2+jr
(r2 x \hat{n | (2b) |
where, for the
i
{\omega}i\inR3
{\omega'}i\inR3
Ii\inR3
ri\inR3
p
The velocities
vp1,vp2\inR3
vpi=vi+\omegai x ri | (3) |
for
i=1,2
e
vr=vp2-vp1
v'r=v'p2-v'p1
\hat{n
v'r ⋅ \hat{n | (4) |
Substituting equations (1a), (1b), (2a), (2b) and (3) into equation (4) and solving for the reaction impulse magnitude
jr
jr=
{
+
+
(r1 x \hat{n | (5) |
Thus, the procedure for computing the post-collision linear velocities
v'i
\omega'i
jr
vr
m1
m2
I1
I2
r1
r2
\hat{n
e
jr
jr
\hat{n
jr=jr\hat{n
v'i
vi
mi
jr
\omega'i
\omegai
Ii
jr
{\mu}s\inR
{\mu}d\inR
{\mu}s>{\mu}d
fs,fd\inR
fr=|fr|
fs={\mu}sfr | (6a) | ||
fd={\mu}dfr | (6b) |
The value
fs
fd
The Coulomb friction model effectively defines a friction cone within which the tangential component of a force exerted by one body on the surface of another in static contact, is countered by an equal and opposite force such that the static configuration is maintained. Conversely, if the force falls outside the cone, static friction gives way to dynamic friction.
Given the contact normal
\hat{n
vr\inR3
\hat{t
\hat{n
\hat{t fe\inR3 \hat{t ff\inR3 \hat{n \hat{t fe\inR3 \hat{t ff\inR3
|