Tim Jansen Tim Jansen - 10 months ago 76
Android Question

Android Game Development Engine needed?

I am new to Android / Android Game Development. I wrote a few basic Apps in Android Studio and want to make an 2D game like Flappybird/Crossyroad/Jetpack Joyride.

What exactly do I have to do for this (download,install,learn)?

Do I need an Engine, what exactly is an Engine, so dont I need Android Studio anymore.

Do I have to programm in Java? (I heared that an Engine can be in C# but how can this works fine on android[which is Java based? ])

Answer Source

So, I'm currently in the research and design phase for the development of a game right now so take this information out with a grain (or pinch) of salt:

A game engine is a what takes your game's data and "talks" to the hardware. Most game engines are written in C/C++. How this relates to Java game development is that when you write code in Java, and use Javac to compile your code, javac outputs that compilation to java-byte code, this in turn is read by a JVM. That in, mind the JVM is written in C. So what's happening is effectively a hand wave double compilation, speed and efficiency are sometimes sacrificed for readability and ease of use.

Essentially by using a Java based engine you're adding another layer of communication between your game and the hardware, which can affect performance.

A game engine can keep any customizable modules of your code from needing recompilation by utilizing a scripting language (like Lua or C#).

Using an engine for your game is best practice & industry standard.

There are a number of engines out there for you to use: Wiki Article

You should pick one that works best for your development environment and project lifecycle. That being said, I'm really looking forward to giving defold a shot. It is 2D first, with the capability of publishing to most major platforms and being free, puts it right in line with my current project.

I hope this helps!