Realistic Collision Detection & Response

Started by
2 comments, last by Extrarius 21 years, 11 months ago
In a game I''m programming (which is a very simple game, but this part could be reused so its worth doing well imo), I need to be able to detect a collision between any 3D solid figure and any other 3D solid figure. In the end, the models will most likely be a sphere (the model is an approximation of course, but it would be treated as a true spehere), a cube, a tetrahedron, and other polyhedrons. I know how to do line-polygon intersection tests, and all the models would be made of triangles to make them easier to send to the renderer(OpenGL), but there are some cases I can think of where just doing a bunch of line tests from current vertex position to future position wont work. If a face on a moving polygon that is quite large is going to collide with a still face that is much smaller for instance, it wouldnt detect the collision. Also, when the polyhedron are rotating, collisions might be detected where they dont actually happen or not reported when they do since the collision detection is using a straight line but the vertexes are travelling a curved path around the model origin and the model origin is moving in world-space. Does anybody know of any good resources on generic polygon-exact collision detection and response. I need to simulate objects with different amounts of elasticity and hardness flying around and colliding with other shapes. Some shapes will be fixed in position and some will be free-floating. Also, this is all in zero-G. Spin from from friction also needs to be simulated.
"I believe; therefore, it is." -True Perception
"The Requested Information Is Unknown Or Classified" -Anonymous
"Walk not the trodden path, for it has borne it's burden." -John, Flying Monk
Advertisement
try http://www.gametutorials.com/
they have info on collisions
---Quite soon...ICQ: 163187735
Unfortunately, as I said, the line segment-polygon collision detection presented at gametutorials.com only partially helps. There would be many cases where it detected collisions incorrectly (either not reporting collisions that happen or reporting collisions that didnt happen)


"I believe; therefore, it is." -True Perception
"The Requested Information Is Unknown Or Classified" -Anonymous
"Walk not the trodden path, for it has borne it's burden." -John, Flying Monk
Check out "3D Game Engine Desing" by David Eberly
They acutally stock it at the Border''s near me, try there if you want to preview it first.

Magmai Kai Holmlor

"Oh, like you''ve never written buggy code" - Lee

[Look for information | GDNet Start Here | GDNet Search Tool | GDNet FAQ | MSDN RTF[L] | SGI STL Docs | STFW | Asking Smart Questions ]

[Free C++ Libraries | Boost | ACE | Loki | MTL | Blitz++ ]

Shamelessly ripped from Oluseyi
- The trade-off between price and quality does not exist in Japan. Rather, the idea that high quality brings on cost reduction is widely accepted.-- Tajima & Matsubara

This topic is closed to new replies.

Advertisement