



Ultrano wrote:I thought I'd post some "benchmark" results. A game with a fullscreen background bitmap, and 600 32x32 sprites on it (each is alphablended). Did not involve timers, just my experienced eye, for now.
Canvas:
- on real device runs a bit slower than the emulator on a C2D 2.4GHz + DDR2@2x400MHz
- around 20fps in that game
- bad: can't specify opacity of a Blt, or I couldn't find it
- good: very easy to start-up with
- good: directly draw text
OpenGL:
- on emulator that game runs at 2fps, on real device it's over 50+ FPS!
- bad: hard to start-up with
- bad: keep textures in POW sizes
- bad: no text, make spritesheets and custom text-drawing funcs
- bad: 1 cheap Australian Android phone comes-out very soon, with no gpu, with 320x240 screen. Oh well, at least it's just like $50 cheaper, and lacks too many G1 features to be important.
- bad: IntBuffer is buggy, so no streaming dynamic data in GL_FIXED format
- good: again, 50+ FPS.
- good: blending! alpha, additive, multiply, subtract - its' awesome
- good: per-vertex color-modifiers, alpha can specify per-quad opacity.
- good: lets you put the game-code in another thread, so finally a real game-loop. As it should be for games.






mortefer wrote:As Ultrano stated to me today, use GL_FIXED, not GL_FLOAT for VBOs.
Don't forget to convert coordinates (int int_coord = (int)(float_coord*65536)).
After switching to GL_FIXED application gained smth around 5-6 fps. But this was, as stated above, complex geometry (up to 1,5k vertices per model), ligting, heavy textures.





mortefer wrote:Found out an interesting thing today (thanx Ultrano).
I implemented a simple FPS monitor using TextView above OpenGL surface. average FPS of the application: ~18.
I used the following string to output the nicely formatted FPS string:Using java Syntax Highlighting
String.format("%5.2f", 1000.f/delta)+" fps";Parsed in 0.033 seconds, using GeSHi 1.0.8.4
The next thing i've noted that FPS were down every 5-6 seconds. I've checked console view and guess what? It was garbage collector. Removing this string helped to DOUBLE the fps and even more. Top FPS now are 50. average ~40.

Return to Android 2D/3D Graphics - OpenGL Tutorials
Users browsing this forum: No registered users and 9 guests