Product Cover Image

Learning Android Game Programming: A Hands-On Guide to Building Your First Android Game

By Richard A. Rogers

Published by Addison-Wesley Professional

Published Date: Dec 1, 2011

More Product Info


Build the Next Great Android Game!


Learning Android Game Programming is your hands-on, start-to-finish guide to creating winning games for today’s rapidly growing Android mobile device marketplace. If you have even basic Android development experience, Rick Rogers will help you build on your knowledge to quickly create low-budget 2D mobile games that sell.


The book starts with an up-to-the-minute overview of today’s Android mobile games marketplace, reviews each leading genre, and teaches you the foundational concepts of game development. You’ll design a simple game, then master every step of game development with AndEngine—the powerful, open source, free game-development engine. Every chapter teaches with sample code you can actually use, including many examples drawn from the published game, Virgins Versus Vampires (V3).


With this book you’ll learn how to 

  • Use free Android tools for creating code, artwork, and sound
  • Implement the “game loop” that is at the heart of Android games
  • Bring your game to life with scene transitions and entity modifiers
  • Make the most of bitmap and vector graphics, sprites, and animation
  • Integrate user input via touch, multitouch, keyboard, voice recognition, accelerometer, location, and compass
  • Build infinite virtual worlds with tile maps
  • Create, save, and reuse powerful particle effects
  • Find, acquire, modify, and use background music and sound effects
  • Implement highly realistic physics effects with Box2D
  • Use AI techniques to make your games smarter and more fun
  • Build a scoring framework based on collisions between your game elements

Download the free version of Virgins Versus Vampires (V3) from Android Market today, as you learn how to build the game in this book

Table of Contents

Foreword xix

Preface xxi

Acknowledgments xxiii

About the Author xxv


Chapter 1: Mobile Games 1

The Mobile Game Market 1

The World of Computer Games 2

AndEngine Examples 10

Summary 12

Exercises 12


Chapter 2: Game Elements and Tools 15

Software Development Tools 15

Graphics Tools 20

Audio Tools 24

Getting Our Feet Wet: The Splash Screen 26

Summary 31

Exercises 32


Chapter 3: The Game Loop and Menus 33

Game Loops in General 33

The Game Loop in AndEngine 34

Adding a Menu Screen to V3 37

Memory Usage 50

The Quit Option 51

Summary 51

Exercises 52


Chapter 4: Scenes, Layers, Transitions, and Modifiers 53

Scenes in AndEngine 53

Creating the Game Level 1 Scene 79

Summary 85

Exercises 85


Chapter 5: Drawing and Sprites 87

Quick Look Back at Entity 87

Drawing Lines and Rectangles 88

Sprites 89

Summary 106

Exercises 107


Chapter 6: Animation 109

Requirements for Animation 109

Animation Tiled Textures 110

Animation in AndEngine 111

Animation Example 113

Adding Animation to Level1Activity 118

Animation Problems 126

Advanced Topic: 2D Animations from 3D Models 127

Summary 127

Exercises 128


Chapter 7: Text 129

Fonts and Typefaces 129

Loading Fonts 130

Text in AndEngine 133

Custom Fonts 137

Adding Custom Fonts to V3 139

Summary 146

Exercises 146


Chapter 8: User Input 149

Android and AndEngine Input Methods 149

Adding User Input to V3 167

Summary 171

Exercises 172


Chapter 9: Tile Maps 173

Why Tile Maps? 173

Types of Tile Maps 173

Structure of Tile Maps 176

Tile Maps in AndEngine 176

The Tile Editor: Tiled 179

TMX Files 180

Orthogonal Game: Whack-A-Vampire 181

Isometric Tile Maps 196

Summary 197

Exercises 197


Chapter 10: Particle Systems 199

What Is a Particle Emitter? 200

How Do Particle Systems Work? 200

The AndEngine Particle System 201

Creating Particle Systems 206

Particle Emitters in V3 211

Summary 216

Exercises 217


Chapter 11: Sound 219

How Sound Is Used in Games 219

Sources of Music and Effects 220

Tools for Music and Effects 221

Sound Codec Considerations 221

Sound in AndEngine 222

Adding Sound to V3 225

Summary 241

Exercises 241


Chapter 12: Physics 243

Box2D Physics Engine 244

Building Levels for Physics Games 246

AndEngine and Box2D 248

Irate Villagers: A Physics Gamelet for V3 261

Implementing IV 261

Summary 276

Exercises 277


Chapter 13: Artificial Intelligence 279

Game AI Topics 279

Implementing AI in V3 287

Summary 297

Exercises 297


Chapter 14: Scoring and Collisions 299

Scoring Design 300

Collisions in AndEngine 306

Letting the Player Score 308

Graveyard (Level 1) 308

Whack-A-Vampire 315

Irate Villagers 318

Summary 322

Exercises 322


Chapter 15: Multimedia Extensions 325

Downloading Extensions 325

Live Wallpapers 326

MOD Music 332

Multiplayer Games 336

Multi-Touch in AndEngine 337

Augmented Reality 339

Summary 343

Exercises 344


Chapter 16: Game Integration 347

Difficulty Balancing 348

Completion 350

Level 1: The Main Game 352

Whack-A-Vampire 358

Irate Villagers 360

Options Menu 363

Summary 363

Exercises 363


Chapter 17: Testing and Publishing 365

Application Business Models 365

Testing and Getting Ready 366

Publishing 373

Promoting Your Game 376

Summary 380


Appendix: Exercise Solutions 381


Index 429