I honestly have no idea what the people are asking for when they say box2d sfml integration or the like..?
I mean really: box2d the physics simulation -> has getPosition(), sfml the renderer -> has setPosition()..
Hmm..hmm.. what do we do?
That debug draw is kind of crappy, I think I wrote new one. And all the integration there was is debug draw, collision and callback classes and lines of sprite.setPosition(ConvertVector(my_body->getPosition()));
Also don't get fooled by 'engine', this was just messing around a bit with sfml and box2d.
It probably
could be extended. Especially thanks to call backs. There is EEUserData class that has methods CollidedWith and PartedWith that take pointer to EEUserData so collision callback class takes void pointer from fixture, cast it to eeuserdata and then give both the pointer of other data so they can decide what to do.(order does not matter, if there was any physical interaction, it'd have to be lazy assignment because callbacks happen when it's forbiden to modify the world).