I’ve been prototyping some scenarios for the Cupcake 2D game engine using SFML, and I’m pretty pleased with the performance so far. Here is a screenshot of animating 10,000 sprites at 1280x1024x32 using the Radeon HD3200 built into my motherboard:
The FPS shown is actually an average over the total time the animation was running (about 10 seconds at the point I took the screenshot). The individual frame rate got a little slower as the camera zoomed in, and sped up as it zoomed out.
You’ll notice that all the images are the same, albeit scaled to different sizes. When creating a 2D game, you will often make use of the same graphics over and over again, just changing the way it’s scaled or colored (think backgrounds, bullets, particle effects). So, I thought this would be a good initial performance test for the sprite engine.
Of course, dropping down to a more reasonable number of sprites (4,000) puts the FPS at around 50, depending on the zoom level.