Hello, I'm working on the physics engine for a game that requires
fairly accurate physics, and I'm finding that the physics required to
determine the results of collisions are quite beyond my knowledge.
I figured out that the best thing to do would be to pick the most
general case and use the equations that result from it for all
collisions. Unfortunately, every attempt I have made at deriving this
equation myself has fallen flat on its face.
So my problem is as follows:
Given two rigid objects with arbitrary shapes, their linear and
angular velocities, their masses, centers of mass, moment of inertia,
and the point of impact, how does one determine the new linear and
angular velocities?
Some assumptions I am making:
If it makes the equations easier to solve, the collisions are
perfectly elastic.
All objects are two dimensional and polygonal.
All collisions occur between a corner of one object and an edge of
another.
All objects are made of the same material.
There is no gravity or friction.
If any more information is needed to solve the problem, such as
information about the angles of the surfaces impacted, I can get the
simulation to provide them.
Could anybody help me figure out how to solve this?
.
|