Description
Key Features
- Learn Java, Android, and object-oriented programming from scratch
- Build games including Sub Hunter, Retro Pong, Bullet Hell, Classic Snake, and a 2D Scrolling Shooter
- Create and design your own games, such as an open-world platform game
Book Description
Android is one of the most popular mobile operating systems presently. It uses the most popular programming language, Java, as the primary language for building apps of all types. However, this book is unlike other Android books in that it doesn’t assume that you already have Java proficiency.
This new and expanded second edition of Learning Java by Building Android Games shows you how to start building Android games from scratch. The difficulty level will grow steadily as you explore key Java topics, such as variables, loops, methods, object oriented programming, and design patterns, including code and examples that are written for Java 9 and Android P.
At each stage, you will put what you’ve learned into practice by developing a game. You will build games such as Minesweeper, Retro Pong, Bullet Hell, and Classic Snake and Scrolling Shooter games. In the later chapters, you will create a time-trial, open-world platform game.
By the end of the book, you will not only have grasped Java and Android but will also have developed six cool games for the Android platform.
What you will learn
- Set up a game development environment in Android Studio
- Implement screen locking, screen rotation, pixel graphics, and play sound effects
- Respond to a player’s touch, and program intelligent enemies who challenge the player in different ways
- Learn game development concepts, such as collision detection, animating sprite sheets, simple tracking and following, AI, parallax backgrounds, and particle explosions
- Animate objects at 60 frames per second (FPS) and manage multiple independent objects using Object-Oriented Programming (OOP)
- Understand the essentials of game programming, such as design patterns, object-oriented programming, Singleton, strategy, and entity-component patterns
- Learn how to use the Android API, including Activity lifecycle, detecting version number, SoundPool API, Paint, Canvas, and Bitmap classes
- Build a side-scrolling shooter and an open world 2D platformer using advanced OOP concepts and programming patterns
Who this book is for
Learning Java by Building Android Games is for you if you are completely new to Java, Android, or game programming and want to make Android games. This book also acts as a refresher for those who already have experience of using Java on Android or any other platform without game development experience.
Table of Contents
- Java, Android & Games
- Java Basics & An Introduction to Object Oriented Programming – Starting the Sub Hunter Game
- Java Variables, Operators, Expressions and Android Debugging – Spawning a Sub to Hunt
- Making Decisions with Java If, Else & Switch – Getting the Player’s Input
- The Android Canvas Class, Drawing to The Screen – Firing Depth Charges
- While, Do While, For Loops, Break & Continue – Enhancing Sub Hunter Game
- Java Methods – Finishing Sub Hunter Game
- Object Oriented Programming – Starting the Pong Game
- Interfaces, Threads & Exceptions – Coding the Pong Game Loop
- Coding a class for the player’s bat & Handling Input
- Collisions, Sound FX and Supporting Different Android Versions – Finishing the Pong Game
- Handling LOTS of Objects with Arrays – Welcome to Bullet HELL
- Drawing with Bitmap Graphics – Coding the Player and Finishing the Game
- Java Collections, The Stack, the Heap & Garbage Collection – Starting the Snake Game
- Using Java Enumerations – Building the Snake Class
- Android Localization, Hola! – Building a Retro Game Loop
- Finishing the Snake Game
- More Advanced OOP using Inheritance, Polymorphism & the Entity Component Pattern – Starting the Scrolling Shooter Game
- Managing Sound Better & Pausing the Game
- Coding The player’s ship and Scrolling Stars
- Persisting Data & Finishing the Game
- Using More Advanced OOP with Singleton Pattern & the AssetManager Class – Starting the Platformer Game
- Viewing Huge Worlds Through a Camera
- Improving Performance with Object Pools & Animating with Sprite Sheets – Adding Enemies and Bullets
- Handling Multiple Screens & Communicating Between Objects – Finishing the Platform Game
- What next
Reviews
There are no reviews yet.