This is in regards to the post by Walter a few days ago:
So here is the problem. We are developing a 2D scrolling tile-based physics game and we are struggling to improve the framerate. We are trying to implement these new performance improvements as described by Walter but without detailed documentation we are getting no where.
We've found that by making the tiles bigger it does indeed speed the game up. And it looks better, too! Everything is 1.5x bigger, and on the iphone 4 the framerate has gone from 22 to 26 fps. However, it is still way too slow for 3G.
There's a problem with Corona, which really limits what you can do with scrolling tile-based games. Simply, it's drawing the tiles that make up the levels in a very inefficient way, which means we couldn't use this approach at all.
So, to get around this, we had to use a small number of big images to make up the level, rather than lots of little ones. We also looked at culling as much physics collision data as we could.
We were able to get 30 fps on 3G by using these methods!
Once we heard about the "Blazing Sprite and Tile Performance" updates for Corona, we got really excited to implement them. So we bought a pro license, got the latest build and pre-release tools, and got to work.
We reverted back to the original (slower) Corona drawing method because we thought Corona had been optimized per Walter. However, the performance at the moment is worse than the previous version. Our previous large-tile version was around 30 fps on iPhone 4. Now it's running at 20. We've got pre-release versions of the tools, meaning everything renders correctly again, but there's no documentation or examples on how to use the new performance features, we're just working from sketchy details and blog posts, so we're obviously doing something not quite right somewhere.
We're going to carry on implementing new levels in the meantime, and hopefully in the near future proper documentation will be forthcoming.
Can anyone help us out? We want to at least get 30 fps but obviously more than 30 would be even better!
Thanks in advance.