Original Post
Hi all, I'm working on a 3D space combat game and recently I've been trying to get collision detection working. The algorithm that I've gone with appears to be very slow, so I was wondering if anyone had any better ideas for how to go about it? Some of the ships have complex shapes, so bounding spheres etc won't be very believable. My current approach does a simple rejection test for entities in the game world using a bounding sphere calculated at load time. So when an object moves it cycles through other entities in the world doing a simple "do our spheres collide" test which is quite cheap performance wise. If one of these tests succeeds then it moves on to doing a triangle-triangle collision test using a collision mesh created by the artists working on the project. Collisions meshes only consist of < 100 polys, yet the test reduces the frame rate from 450FPS down to about 15 when you are close to an object in the world. Maybe just the triangle collision test that I am using is slow, but do you think this is a viable approach for a real time 3D shooter? Thanks in advance for any comments.