This project has moved and is read-only. For the latest updates, please go here.

Whats happening with sat?

Topics: Developer Forum, Project Management Forum, User Forum
Aug 29, 2009 at 8:47 AM

Just wondering what is up with sat development.

The last change was almost 2 months ago and just says "More testing required"
Is it still under develpment or has matt finished the new implimentation of sat? or is it on hold?

Also i remember ages ago i saw someone trying to get real circles into farseer.. does anyone know of what happend with that?
would real circles be faster? or would they stop the jittering of a circle when rolling over a flat surface?

Anyway if anyone knows anything about any of the above it would be great to know.

Aug 29, 2009 at 3:45 PM

Good question.

Matthew wanted SAT in Farseer Physics Engine, so he worked out a solution that would work together with the distance grid. Problem was that Farseer did not support specific shapes and thus he only implemented polygon vs. polygon collision detection. He wanted circle vs. circle, circle vs. polygon and polygon vs. polygon implemented so he also started on getting real circles into the engine too.

It was too much work tho, you have to have 100 things in your mind at the same time, so he left the real circle implementation and started working the polygon SAT code instead. He got a solution working but it had some bugs, unfortunately he does not have a lot of time (personal life, moving house and so on) so he has not been active for quite some time. He has worked up a new SAT implementation tho (the one you mention), but it requires more testing and still has some bugs.

Depending on the algorithm, real circles will be faster than polygon approximations and it will not have the jumping problem (hitting the edges of the circle). It calculates the contacts on the fly and thus it will also bounce correctly.

However, I just got word from Erin that Box2D is very close to be feature complete - We have a working C# port that is only 3 revisions behind the main trunk (that will change later today as I will be porting over the latest changes) and thus we will have real circles and a brand new SAT implementation in C# very soon. I'll make sure to announce it once I think it is ready to be tested in the wild.

Aug 30, 2009 at 12:21 PM

I've ported over the changes (it does not compile) so we are now up to date in the source tree. The testbed (all the samples) still needs to be updated, but I will hopefully be done with that today.