I have been trying for quite some time to optimize the frame rate of my game without success. I work on the latest iPhone SDK and have an iPhone 3G 3.1.2 device.
I call arround 150 drawcalls, creating a total of about 1900 triangles (all objects are textured using two texture layers and multitexturing. Most textures come from the same texture as the texture stored in the compressed pvrtc 2bpp texture). It displays on my phone at about 30 frames per second, which seems to me too low for only 1900 triangles.
I tried a lot of things to optimize performance, including batch combining objects, converting vertices to CPUs and rendering them in one drawcall. this delays 8 drawcalls (unlike 150 drawcalls), but the performance is about the same (fps drops to arround 26fps)
I use 32-byte vertices stored in a striped array (position 12 bytes, norm 12 bytes, 8 bytes cu). I handle triangles and vertices are ordered in TriStrip order.
I did some profiling, but I really don't know how to interpret it.
Can someone tell me what else I could do to figure out the bottleneck and help me interpret the profiling data?
Thank you so much!
performance iphone opengl-es
genesys
source share