What you could do is creating a circle around each sprite and check before if they collide (circle vs circle collision is faster then rect vs rect), but I in my opinion that's not worth it, too.
Oughh... I'd be careful with that. It gives you an incredible
(I assume we're talking about SAT collision testing now)
In case you have lots of polygons, especially polygons with lots of vertices (in my case I had 'only'
, circle pre-checks can improve the performance a lot. They're pretty much eqivalent to one single, simplified SAT axis test + two multiplications
Also, if you think of using pre-checks I'd really suggest circles instead of rectangles.
Rectangles have the problem, that you usually need to re-compute them if you for example rotate the polygon.
Circles are circular, therefore you don't need to re-compute the radius, as it is the same all the time
But I agree to Cero: Using some kind of grid will improve the performance a lot as well (after that comes the circle-check).
If we're not talking about SAT, but AABB collision tests, then you shouldn't really need to do the circle check, but the space partitioning (Grids, etc, see Cero's post) should help you.
I don't know which is the fastest from == >, <, <=, >=.
My guess is, it's ==. (As far as I know it needs a subtraction and another instruction for testing whether something is 0, but that actually only applies for native code. Java is mostly interpreted, even if everything is JIT-ted. Idk whats the case then.).