Collision/Physics Library for a FPS game
I''m trying to do a little FPS game in my spare time but I''m having a lot of problems when the player collides against multiple triangles/faces (a corner, for example). So, I need a quick temporal solution. Is there a collision/physics library with the following features?
- Fast collision detection with large amounts of data (high poly counts). The static geometry is defined triangle by triangle (not using standard shapes like boxes) so I can use any sort of surfaces (as any real game does). The player and any other game object are represented with spheres, cylinders or ellipsoids.
- Returns the velocity vector in which the object (the player, for example) must move to slide (even when collides with multiple faces) as we see in any First Person Shooter.
- Automatically goes up and down stairs and hills. (I think it''s only possible to achieve if the player is represented by a sort of ellipsoid, sphere or capsule).
- It''s much better if there is a physics library that do this automatically just giving forces to the objects.
Computer Programming is Magic! Hold the Power!
havok or karma. both cost $$$. karma has just been bought by criterion (renderware).
http://www.mathengine.com
http://www.havok.com
http://www.mathengine.com
http://www.havok.com
There''s always the Open Dynamics Engine (ODE), available here:
http://www.q12.org/ode/ode.html
I have no idea whether this package is fact or robust or useful, but it is there.
Graham Rhodes
Senior Scientist
Applied Research Associates, Inc.
http://www.q12.org/ode/ode.html
I have no idea whether this package is fact or robust or useful, but it is there.
Graham Rhodes
Senior Scientist
Applied Research Associates, Inc.
Graham Rhodes Moderator, Math & Physics forum @ gamedev.net
I''ve been using ODe primarily for the rigid body physics of my vehicles. It takes a bit of getting used to, but it does wonderful rigid body collisions. I''m not sure it''s worth it if all you want is bounds checking for collision detection, though. That would seem to be easier to do yourself.
Onnel
Onnel
Yes, I think I''m being too much lazy. I''ll do it myself.
Although, ODE seems to be pretty interesting.
But I have a question: ODE doesn''t support collision detection for meshes with arbitrary triangles? I need that for at least the static geometry and the documentation just talks about boxes, spheres and things like that.
Although, ODE seems to be pretty interesting.
But I have a question: ODE doesn''t support collision detection for meshes with arbitrary triangles? I need that for at least the static geometry and the documentation just talks about boxes, spheres and things like that.
Computer Programming is Magic! Hold the Power!
No ODE only supports a limited set of polygons by default (you can add your own)...that's why I say it's a bit of a waste to use it only dfor collision detection. One option would be to use it for ballpark collision detection using bounding polygons (boxes or spheres or whatever) and then do a triangle by triangle mesh comparison yourself. In this way, you're sort of using it to replace an octree or some other mechanism of rough first pass checking.
For my collisions, I use the ODe checker for a rough check and then use my own triangle to triangle test fdor fine grained testing.
No matter what system of actual polygon to polygon test you go to, you'll absolutely have to have a rough first pass test...especillay if you want high polygons and lots of objects. The first pass should weed out 98% of the work.
Onnel
[edited by - onnel on October 12, 2002 12:38:57 PM]
For my collisions, I use the ODe checker for a rough check and then use my own triangle to triangle test fdor fine grained testing.
No matter what system of actual polygon to polygon test you go to, you'll absolutely have to have a rough first pass test...especillay if you want high polygons and lots of objects. The first pass should weed out 98% of the work.
Onnel
[edited by - onnel on October 12, 2002 12:38:57 PM]
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement
Recommended Tutorials
Advertisement