Sign in to follow this  
Mr.L

Separating axis 3d

Recommended Posts

Mr.L    125
With help of some Tutorials i finally understood how to use SAT for recognizing and resolv9ing collisions in 2d.
Now I'd like to continue in 3d.
But I have no Idea how i should do this, because after hours of google i didn't found anything useful.

Can someone give me something to start one thinking?

Share this post


Link to post
Share on other sites
SAT in 3D is nearly the same as in 2D but with extra axis that you may not think of that must be checked.

For two polyhedra, you have (as expected) the face normals as potential seperating axis, but you also have all cross products of edges (one from one polyedra, one from the other) as potential axis. (Being careful not to check degenerate axis) which clearly paves the way for some numerical issues as well as meaning the number of seperating axis can quickly explode!

In 3D you may more commonly see the more general (and fairly easy to implement in a numerical stable way) GJK algorithm for intersection tests between 'any' two convex shapes rather than strictly defined primitives. It's usual partner is the EPA algorithm if you need to find more information than 'they are colliding' for intersecting shapes which is unfortunately much harder to implement in a numerically robust way. Edited by luca-deltodesco

Share this post


Link to post
Share on other sites
Mr.L    125
what do you mean with:

", but you also have all cross products of edges (one from one polyedra, one from the other) as potential axis"

which edges do you mean? Edited by Mr.L

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this