"Your capx is far away from just moving some sprites around. It's moving 650 sprites around and doing 422,500 collision checks every tick."
I understand what you mean, but i meant "IM" not doing anything, that i don't trigger anything for these objects, C2 does a lot of things, that's why the fps drops.
"On sprite collision with sprite
Sprite bullet speed is > 0
This means c2 misses out on all the performance benefits because it does all the collision checks first, which is the more intensive task. The filtering happens top to bottom, so what you should have done was:
Sprite bullet speed is > 0
If sprite is overlapping sprite"
You are correct about that, did a test earlier of these events, and found that the "On collision" is the one that does the biggest performance hit.
1000 objects, will reduce fps by 92.5% where the same test using overlapping, only reduce fps by 62.5%. So that could explain why you don't suffer that much when you use that.
"I want to make sure you understand that just because the object don't appear to be doing anything, doesn't mean you're not slamming the CPU. The act of checking for collisions on them all every tick is intensive, even though there is no visible result."
Yeah im aware of that :)
"Which you can. You can set conditions, but they need to be BEFORE the collision check. That's why you use 'is overlapping' rather than 'on collision' so you can put conditions before it. "
Yeah it does way better than the other. Agree.