Android Game. Mobile gaming is not something new, but gaming on Android is quite challenging really, because you’ve got several hardware manufacturers adopting Android OS. It’s good for end users. Since you’ve got a large variety of devices to choose from, but on the other hand. We developers get to suffer a bit because we have got to support multiple hardware specifications in our development.
Unlike the iPhone, Android phones have different screen resolutions. Also, processor speeds and a lot. It will probably concern you as an Android developer. It’s even more painful if you are a game developer yourself.
That’s why I’ve decided to make a very simple game engine for Android from scratch. Now a lot of people would say: “do not reinvent the wheel”. I really agree but I had my reasons when I thought about giving a lot of my time and energy to this matter. I’ve listed them here:
- I couldn’t find a decent Android game engine that was easy to use.
- I needed to help fellow developers understanding the inners of a very simple game engine easily and free of charge.
- What the hell, I just had the urge to write one from scratch!
I was in the process of making my game “Precious Drop”. However, in the very beginning of the project, I have found out that there was a good amount of code. Code that I wrote that could be extracted as independent modules. I was so sure that I was going to use again in further development. And so I figured that it was a good idea to name my game engine “Precious Engine”. Since it is the core of the game “Precious Drop”.
You have to know that I had to neglect and discard a lot of good conventions in programming because mobile development is different and especially on Android, because of the performance obstacles and because of the programming language. Coming from a decent experience with C++, Java is pretty different and spoiling. You have the Garbage Collector (GC) doing most of the memory management work for you. That’s great but sure there is a performance hit with that in hand. You have to keep this in mind while going through the code.