The simplest way of solving that problem is to simply move the object off screen
that is a well tested way of doing things.. especialy in flash / shockwave games ![Smiley :)](https://www.sfml-dev.org/forums/Smileys/default/smiley.gif)
And as for pixel perfect collision detection i belive you could have fast enough pixel perfect collision detection for a 2d game.. but it will take a lot of work.. the simplest solution is to use bounding boxes and try to keep them as small as possible. this will be enough for most simple games ![Smiley :)](https://www.sfml-dev.org/forums/Smileys/default/smiley.gif)
Re: moving stuff off-screen:
If that's common in flash, I'd suspect it has automatic off-screen culling. Otherwise, it's not a good idea. (SFML / OpenGL don't auto-cull.) The goal is to have checks to make sure you don't draw things off screen, not to intentionally move things off screen and draw them anyway because you can't be bothered to just not draw it.
And how is that even simpler from a coding perspective? If you have some sort of test to move it off-screen, you already know you don't want it; so why don't you just not draw it?
Re: Collision detection:
I really, really want to know where all this (brute force) "pixel perfect collision detection is fine" stuff comes from. Yes, you can probably get it to work on a small scale if you're only doing a few collisions,
and the sprites are small,
and you don't mind artificially inflating system requirements,
and you're not doing other silly things to burn your CPU.
Effective and efficient collision detection is an important part of game dev. If you want to ignore the topic to focus on learning other things
with the intent to come back later, that's fine (and probably even a good idea). But stop pretending such code laziness is ok just because the game is 2D.
Edit: Although with some of the unbelievably-slow flash stuff I've seen, I'm not surprised if this type of thinking is out there.
Edit Edit: Real-world example:
I'm currently developing what will become a commercial product using (slightly) modified/added-on SFML. The following optimizations are in place:
1) Map objects arranged in small blocks using hash tables for rapid searching and access based on location.
2) Offscreen-culling based on #1.
2) Intelligent, 3-phase collision detection. (It even appears "pixel perfect!")
If I disable those, the game drops to slide-show framerates on a computer that run the likes of Bioshock beautifully. The game is 2D.
Stop pretending this stuff doesn't matter.