Hehe, I’d use libgdx if I didn’t have a massive pile of legacy tools and pipeline and code already Priority #1 is to make it easy to transition for us. Go on then, let’s hear the trick, I’ve got a bag of cookies waiting for you!
Also, how did you get VBOs to work? I mean, they work perfectly well on half the phones I’ve tried it on, and not at all on some others. Of course I wasn’t actually checking that VBOs were available which might account for that But you are right, they are no faster at all, and thus probably quite pointless.
So far the very fastest method I can think of doing this is to actually write the Sprites directly into memory with Unsafe or some equivalent, and then using a vertex shader to do the transform/rotate/scale/etc directly on the data. The only small problem left is the need to sort the sprites before writing the data out but that is remarkably fast anyway, taking only a few % of the total frame time thanks to radix sort being so fast and scaleable.
Cas