I have been putting in some hours of this week’s vacation to work on my October Challenge entry but finally have to admit that one week just is not enough. I will continue to work on Boskovice for the next month, hopefully will be able to keep motivated and maybe at the end of the year have some version ready to put in the android play-store.
Overall Summary: This has been my first time tinkering with the android platform and I have to say that I am impressed with the hardware and software-side. I started with my Ludum Dare 24 entry, which was using raycasting-based software rendering. After porting it easily to android (its java), I noticed that this approach is not working on a mobile device: software rendering is too slow. I started from the ground up with libgdx and reimplemented the graphics in OpenGL ES 2. As libgdx allows you to build for android and the desktop, I was able to use all the advantages of developing on the desktop. Including the goodness of hot-code-replacement. Only to test the touch-input, some shader differences in OpenGL ES compared to desktop OpenGL and test performance, I had to use the android phone at some points. And it is rather impressive that I almost ran out of the box with 60 frames per second on the Samsung S3. It is a new device, but anyway. Oh, and I had to reimplement the raycaster** as this was the main bottle-neck draining the CPU. Turned out that i was doing a little to much floating-point calculates and my math was much more complicated than it needed to be.
The game is still missing alot; physics, particle system, content, content and content.
** Note that the raycaster now is only beeing used to calculate the set of visible tiles and walls, the actual rendering is now done via OpenGL.