Sprzętowa akceleracja OpenGL w Androidzie


Parę dni temu, na emulatorze odpaliłem demo SpriteText – duży obracający się trójką z nałożoną nieprzeźroczystą teksturą 128×128 pikseli. Wynik – 23 fps, to nie dużo, ale emulator nie wykorzystuje karty graficznej. Wszystko spoczywa na procesorze.

Dziś odpaliliśmy demo na HTC Magic. Telefon ma sprzętową akcelerację, a tu marne 18 fps. Wygląda na to, że z tą akceleracją, to jakieś małe oszustwo. No i rzeczywiście, nie wszystko jest przyspieszane. W sieci znalazłem taką odpowiedź na problem z G1:

On the G1 hardware acceleration is used for all window compositing and OpenGL drawing.  It is not currently used for rendering inside of a window. We’d like to support acceleration inside of a window, but this is very tricky to implement (requiring multiple active OpenGL contexts in multiple processes) and not currently scheduled on the roadmap.

Nie wygląda to dobrze. Możemy sobie tylko pomachać systemowymi okienkami. Widać niewiele się posunęło od grudnia 2008 🙁 Może Android 2.0 będzie już miał pełną? Zobaczymy co wypuści Motorola, bo ten cytat wygląda ciekawie:

Native support for OpenGL ES 2.0 + hardware acceleration from the PowerVR SGX 530 = mobile gaming device more powerful than a Sony PSP or Nintendo DSi

Komentarze nie są dozwolone.