Paul has a few hints he posted such as:
- No render targets. In a quick hacky attempt to get the game rendering horizontally instead of vertically we did a render of the whole game to a screen sized render target, and then rotated it to fit it to the screen. This dropped our frame rate from between 23 and 30fps to between 5 and 8.
- Use power of 2 sized textures. http://en.wikipedia.org/wiki/Anti-aliasing Antialaising is a problem for rotated textures on the zune, especially if your textures are not of a size that is power of 2 - 2,4,8,16,32,64,128,256,512,ect... You spent a good deal of time on these graphics spend a few extra minutes and make sure that the texture is in a correctly sized image.
- Preload all your textures. Use a custom resource manager, there is one in the previously uploaded code. Loading a texture from the zune had drive is very expensive in terms of time, while simply passing around a reference to it is practically free.
Best of all, the game (and source code) is getting released for free! Check it out CodePlex.