5 days ago
Continuous collision detection is needed when you have a fast moving object, say a bullet. Continuous collision detection is, in essence, “looking ahead” at where an object is going and seeing if there are any potential collisions (typically using a bounding box or simplified geometry to save on CPU power). If there are no potential collisions, all is well, and if there is a potential collision we can then calculate its outcome.
This paper presents a new algorithm for computing the hit point and normal of a ray and a general convex object, loosely based off GJK.
Supposedly XenoCollide is even easier to implement than GJK.
In 1988, three engineers came together and developed one of the most clever solutions to the problem of detecting when two complex objects collide. Their solution, the Gilbert Johnson Keerthi (GJK) algorithm, named after the authors, made an incredible impact in the fields of robotics, control, and computer graphics. This video is about understanding this ingenious algorithm from first principles.
Some notes and visualization of the GJK algorithm
Video about implementing the GJK algorithm for collision detection
Covers implementing the basics of simulating physics along with collision detection & response
An explanation of how Quake, and other games like it, use BSP Trees to stop the player from walking through walls and falling through the ground.
A paper covering a data structure called Semi-Adjusting BSP-tree, used for representing scenes composed of thousands of moving objects.