Quote:
Yes but there is a problem that arises. Take two points. A(10,10) and B(11,10). Now, under your system, you would check collision for collision between A and B, and a correct algorithm would tell you that these two points are not collided. And with your method you would then move point a, say by 1 px on the x-axis. Now the point is A(11,10) B(11,10). Your collision detection would tell you that they're collided. And you would not move them. This is a problem for several reasons. Now, you could never move the object, even if it was to move it back from pointB, because you would be prevented from any movement because they are collided. The object that you are moving thus becomes "stuck", once it collides. Also, if the object is moving by more than one pixel at a time, it has the chance of going much farther over the object its colliding with. If the leading edge of the object is at x = 10, and the leading egde of the other object is at x = 11. When the first object is moved, the collision detection checks out, and then it can be moved by like 10 pixels, whereupon it would overlap the second object, and it would also be stuck.
Ok, first of all, you should know I SAID that it wouldn't work for objects bigger then 1,1. As for the not detecting collision, then detecting once it's on it, you should check BEFORE you move if it's gonna hit, then not move if it will.