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?
Separating axis 3d
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.
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.
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?
", 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?
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement
Recommended Tutorials
Advertisement