Games are among the most popular and profitable types of mobile applications. New games are developed and released every day on Google Play and other app marketplaces and once in a while we also come across a Flappy Bird like wonder story. This is a roundup of some of the best tutorials available online on Andorid game development that can be useful to developers in learning how to develop games for Android. Note that this list doesn’t cover any specific game engine or game creation tool, (which will be covered in later posts) but concentrates mainly on game development with Canvas/Open GL.
This set of tutorials is perhaps one of the most popular sources for learning Android game development. The comprehensive series of tutorials is also nicely organized into different units and sections. If you are a complete beginner to Java and Android you can start following the series right from Unit 1, titled “Beginning Java” and which essentially deals with various Java concepts from basics to advanced. Unit 2 & 3 covers various aspects of creating a game and lays down the foundation of gaming concepts (you can skip this too if you have created a game in Java before and are familiar with game development concepts). Unit 4 exclusively deals with Android game development and covers a wide range of topics right from setting up a development environment to creating your Android game.
A tutorial in five parts. First part discusses how to create a drawing surface and a framework for the game, second part covers the basics of how to load and display sprites when developing an Android game, the third installment of the tutorial deals with sprite animations, the fourth part walks you through the concept of collision detection while the final installment of the tutorial shows how to derive input from a user and how to use the input to influence the on-screen action (user input). The tutorial linked here is the final installment of the tutorials as it contains the links to all the previous parts. You can also download the project covered in the tutorial and import it into Eclipse.
OpenGL ES (OpenGL for Embedded Systems) is an implementation of OpenGL for embedded devices. Android features good support for OpenGL ES and it is also widely used in developing Android games. This tutorial shows how to get started with OpenGL ES 2.0 for Android.
These series of tutorials walks you through the process of creating a simple 2-dimensional game engine for Android from scratch. During the course of development you will learn about design decisions and understand how each component works in a game engine. The series starts with a detailed introduction to OpenGL ES and then progresses to other topics such as setting up your development environment, concepts related to game engine, stage, scenes, sprites, primitive drawing, textures etc.
You can draw 2D objects in Android either on a View or with a Canvas. If you are drawing objects that need to be be redrawn regularly (which is the case in games) Canvas is the better solution. This tutorials walks you through the process of drawing a 2D object with a Canvas and also shows how to use a secondary thread to perform the drawing for better performance.
Another multi-part tutorial on Android game development. This series walks you through the process of developing a hangman game for Android and discusses the core game development concepts right from basics such as setting up your project to developing the user interface and user interaction. The tutorial also deals with topics such as adapters, XML resources, action bar etc. You can also download the source code of the project developed in the course of the tutorial.
A lengthy series of Android game development tutorials that is somewhat outdated but useful nonetheless. The series guides you through the process of developing an Android game right from the conception of the game idea to its execution. You will learn important game development concepts such as a basic game architecture, game loop, sprite animation, particle explosion, bitmap fonts, moving images on screen, MVC pattern, OpenGL ES, OpenGL texture mapping, collision detection etc. The tutorials are also accompanied with relevant illustrations and source code. You can also download the source code and the eclipse project.
This section of the Android documentation is a must read for developers getting started with OpenGL ES in Android. It walks you through the basics of developing applications using OpenGL and covers topics such as setup, drawing objects, moving drawn elements and responding to touch input. The example code uses the OpenGL ES 2.0 APIs. It is divided into several sections, each one of which discusses a different aspect of working with OpenGL. Building an OpenGL ES Environment, which starts the series shows you how to create a view container for OpenGL ES while the next couple of sections guide you through the basics of how to define and draw OpenGL shapes in your application. The rest of the documentation covers various other important topics such as how to use projection and camera views to get a new perspective on your drawn objects, how to do basic movement and animation of drawn objects, basic interaction with OpenGL graphics etc.
A series of tutorials on OpenGL ES 2.0 that specifically focuses on the 2D aspects of OpenGL ES 2.0 for Android. The tutorials are descriptive and include example source code, which are also available for download. The tutorials cover topics starting from how to render a triangle (first part) to rendering an image, handling input, transforming images, the OpenGL texture system, screens and dimensions etc.
Google Play game services lets you create great game experiences by helping you implement achievement, leaderboards, and real-time multiplaying capability to your game. These elements greatly enhance the game experience for the user/player. A leaderboard allows the players to compare their scores with other players or friends, rewards and achievements encourage better user engagement and multiplayer capability provides a competitive and cooperative experience often using social platforms. In short, you can add a lot to your game experience by utilizing the Google Play Game Services. This official documentation guides you through the basics of how to get started with Google Play Game Services.