I would like to start developing a 2D game for Android, but i haven’t got the slightest clue where to start. For instance, how are the Angry Birds games developed? I’m guessing it’s a 2D engine or something?
Can anyone shed some light on the matter? Anything is appreciated as i have zero ideas on where to look first.
I recommend LIBGDX
Open source, java, cross-platform, good support for Open-GL, lot’s of examples and a good community.
I’ve used AndEngine extensively and I really like it BUT
2D games – unless you have something really, really complicated in-mind (lots of physics and collision detection), I’d recommend you consider creating them in plain old HTML (HTML5, to be specific).
Because HTML5 works pretty-much everywhere and there are some really decent toolkits for making more complex stuff (including level editors and basic physics stuff).
Moreover, you can convert HTML5 into Apps for both Android, iOS and other platforms – e.g. your game will work pretty much everywhere with minimal extra effort. Using tools like Cordova(phonegap) even allows you to access things like cameras and tilt sensors in Apps created from your HTML5 code (Dolphin Browser on Android even allows those apps to run in the browser!)
If you do want fancier stuff, Corona is pretty decent and easy to learn and cross-platform too – and Andengine is great if you’re happy to be stuck on Android!
Yes, Angry Birds was developed on its own 2D engine. I recommend to look at these engines:
Marmalade (AirPlay SDK) – really powerful, but complex engine. Many hits were made on it
Also you can use Unity3D with 2D extension. Its awesome engine.
Good luck with your beginnings 😉
Persnally, To Get started with your first 2D game, Don’t straight away start with a Game Engine or 2D Frameworks.
Here’s a Game that I developed with just the bitmap manipulation logic and a java thread to run the game.
- Create a Java thread that serves as a game loop.
- Make use of SurfaceView and manipulate bitmaps and with onClickListeners you can achieve a simple 2D game.
Go for Game Engine and Frameworks once you are comfortable with it.
I’d recommend AndEngine. They have a really good forum plus their example code is pretty much self explanatory.
If you’re looking for a headstart, follow this tutorial.
Go for AndEngine!
I already answered similar question in another post: Android 2D game development without an engine
I posted a tutorial at http://www.youtube.com/watch?v=PnnHGCKrIzw
Assuming that you are familiar with Java, Eclipse (or similar compiler), Google API, etc. Here are the steps to build a full-blown 2D Android game:
Use drawable-nodpi for sprite images (gives sprite size consistency
across screen densities and sizes)
Use different layouts to support various screen sizes (e.g.
layout-large, layout-xlarge, etc…)
Use TranslateAnimation and ObjectAnimator to animate sprite movements across screen
Use math to figure out sprites collision (e.g. screen coordinates
and sprite location etc.)
Use handlers and condition statements to control the game events
You can test the outcome of following the above guide to developing a 2D Android game by checking out the game Yum Yum Pow available on Google Play. The free limited version is available also on Google Play and can be downloaded at:
Felgo (felgo.com) offers several tutorials for any skill level. It’s a cross-platform 2D game engine.
There is already an open-source Angry Birds clone that was made with Felgo.
It also also comes with ready-to-use game templates for the most successful game genres like tower defense, platform games or puzzle games and provides reusable components for handling multiple display resolutions & aspect ratios, animations, particles, physics, multi-touch, gestures, pathfinding and more to prototype and build games within days API reference.
It is all well documented!
Try here, this helped me loads: http://www.javacodegeeks.com/2011/06/android-game-development-tutorials.html