I'm currently optimizing the rendering of the background of my mobile game. The background consists basically of many colored dots. Since the background is static I'm able ro render the whole background into a 1024x1024 texture (render to texture), so the colored dots don't have to rendered in realtime (especially the blending is gpu intensive).
Unfournately this "optimazation" is only an optimazation for certain devices.
My Notebook: Without optimazation: 400 FPS With optimazation: 800 FPS My gaming pc: Without optimazation: 1100 FPS With optimazation: > 2000 FPS
Consider that mobile devices have a frame cap of 60.
Samsung Galaxy Nexus: Without optimazation: 40 FPS With optimazation: 60 FPS LG G2 mini: Without optimazation: 60 FPS With optimazation: 60 FPS, but with stutters after loading a new level, which disappear over time
I don't have the slightest idea why the optimazation isn't working for the LG G2 mini. So the LG G2 mini is faster at real time rendering many small colored dots but slower at rendering a single texture? It's also weird that the stutters only occur after loading a new level but vanish after a little time?
Game is written in C++ using cocos2d-x, but I don't think its a cocos2d-x related issue.