Book Image

Learning AndEngine

By : Martin Varga
Book Image

Learning AndEngine

By: Martin Varga

Overview of this book

AndEngine is a very popular open source OpenGL (open graphics library) Android game engine, used to create mobile games quickly while maintaining the ability to fully customize them. This book will guide you through the whole development process of creating a mobile game for the Android platform using one of the most popular and easy-to-use game engines available today. Beginning with the very basics, you will learn how to install AndEngine, gather graphics, add sound and music assets, and design game rules. You will first design an example game and enhance it by adding various features over the course of the book. Each chapter adds more colors, enhances the game, and takes it to the next level. You will also learn how to work with Box2D, a popular 2D physics engine that forms an integral part of some of the most successful mobile games. By the end of the book, you will be able to create a complete, interactive, and fully featured mobile game for Android and publish it to Google Play.
Table of Contents (19 chapters)
Learning AndEngine
About the Author
About the Reviewers

Using correct threads to perform actions

As already mentioned in Chapter 4, HUD and Text Display, AndEngine uses different threads for different actions. This makes sense, because the thread that takes care of drawing entities should not be affected by the thread that registers touches.

The two basic threads are the UI (sometimes called main) and update threads. There are certain actions that must be performed in the correct thread. Actions such as showing a toast, dialog, or any other Android view manipulation must be done in the UI thread. Other actions such as manipulating entities must be done in the update thread.

The most common problem with AndEngine is a crash after detaching an entity when a modifier is finished or detaching an entity after performing a touch. There exist a lot of misconceptions among the people in the AndEngine community about this. You will often hear that the problem is caused by detaching the entity in the wrong thread.

However, that is not true because AndEngine...