My brother and I have recently done a bunch of work on B.I.T.S. He totally re-purposed all the art assets to look way crisper and in higher resolution. We’re also adding a new feature to the table. Lastly, I’ve done a lot of work to gain some huge performance improvements even with higher res graphics. I’m seeing an almost constant 60 frames per second on my iPhone 3G (not 3GS) with OS 3.1.3+ and on my iPad. On a first gen device with OS 2.2.1 Im seeing around 40fps.
Most of the performance gains were achieved by eliminating redundant OpenGL ES state changes and batching draw calls. An example of this is when binding textures. Instead of constantly switch textures (everything is stored in texture atlases) I store which texture is currently bound and don’t bind if I don’t need to. I also make sure that I put the textures in the atlases in the order in which they are drawn to further minimize texture switching.
Here is a screenshot comparison. The old version runs at half the speed (inconsistently) and doesn’t look nearly as good. Please note that this is all still in development.
Before:

After:

This entry was posted
on Sunday, February 14th, 2010 at 10:38 pm and is filed under All.
You can follow any responses to this entry through the RSS 2.0 feed.
Both comments and pings are currently closed.