Did you read my previous post about 2D frameworks for Unity 3D? I was curious how their performance compares to my favourite framework for game development: libgdx.
Again, I tested everything on my Xperia Play (on iOS you'd get roughly similar performance using an iPhone 4). My test consists of a single background sprite (640x960 px, static) and three animated sprites (all frames were packed into a single atlas texture to reduce draw calls).
Every touch spawned 10 sprites, every second touch spawned another 100 sprites (randomly selected from these three types). Sprites go from the top of the screen to the bottom of it and are deactivated and reused later (except for the libgdx test, read below). Here are the results:
|Sprite count||Orthello 2D||ex2D||SpriteManager 1||SpriteManager 2||libgdx|
|50||57 fps||60 fps||60 fps||60 fps||60 fps|
|100||18 fps||60 fps||60 fps||60 fps||60 fps|
|150||6 fps||58 fps||60 fps||60 fps||60 fps|
|200||4 fps||52 fps||60 fps||60 fps||60 fps|
|300||1 fps||35 fps||60 fps||58 fps||60 fps|
|500||1 fps||22 fps||58 fps||52 fps||60 fps|
|1000||1 fps||11 fps||45 fps||39 fps||60 fps|
|1500||-||6 fps||33 fps||-||59 fps|
|2000||-||4 fps||26 fps||-||43 fps|
|3000||-||-||17 fps||-||33 fps|
It's worth noting that the libgdx version was built in a rush and I didn't try very hard to optimize it (the sprites aren't even deactivated/reused, because LAZY). Still, the performance is pretty great - that's one of the reasons why I love libgdx!