Collision detection with accelerating body in 3D

39 views Asked by At

A rigid body has a position, velocity, and radius of a bounding sphere to check for collisions. It is possible to check efficiently if/when two such bodies will collide. This can be done by defining line segments starting at the initial positions and pointing in the direction of the velocities. Then compare the minimal distance between the line segments with the sum of the radii.

See for example this answer for a description of the method (there is a difference if the lines are parallel vs skew).

Is there any efficient methods to compute the collision if one of the bodies undergoes a constant acceleration in the time interval of interest?

One conceivable way is to do a collision check with the new velocity vector after having applied the acceleration. If one extends the radius of the obstacle by the length of the acceleration vector, there will be a collision if there is a collision on the actual path taken. However this is an overestimate that does not generalize to longer time intervals as the obstacle radius becomes too large. The idea can be seen in the image, as the distance between the actual path taken 'r(t)' and the linearization through the result veolcity 'v' is bounded by the acceleration vector. illustration

0

There are 0 answers