Thursday, April 4, 2013

My app on Google Play!

I've been rather busy lately finishing my first production that was supposed to go online instead of being forgotten in the abyss of my hard drive.



Magic Fluids is an Android application with an option to use it as animated wallpaper. It draws animations of fluid based on Navier-Stokes equations and adds particles on top of that. It's been well received by Android users and after three weeks on Google Play, paid version is close to 3000 downloads and free version has almost 40000.

The goal was to use graphics programming skills and make something small, while learning Android development and Google's store intricacies. Since I'm currently in the process of completing my Master's degree, it still took 5 months to finish...

Technically, it's written in Android native code almost exclusively with thin Java layer (UI controls and input). It makes use of multithreading so capabilities of new multicore devices are exploited nicely.

Of course, with Android device market fragmentation, it couldn't go without problems. There are issues on less common devices and a few people wrote in comments that the application restarts or hangs their device. I had to exclude some older phones that apparently didn't like the way I handled live wallpaper mode (using OpenGL in Android live wallpapers is quite tricky and AFAIK there is no commonly accepted way of doing this - see e.g. here).

Now, obviously this wasn't as fun as writing a game. I am hoping for a steady stream of revenue for at least a few months (here where I live $1000/month is actually more than enough for a comfortable living if you don't have any debts and don't expect to make savings) and I'm going to spend this time writing a game that I want to release on both Android and Apple devices (and maybe Ouya?). It's really difficult not to go overboard with scope and features, but I'll try my best not to spend more than 6-8 months on it (which in game producers language means one year at best - that would be fine too). I might post something here when I actually have something to show.