Book Image

Mastering iOS Game Development

By : Peter Ahlgren, Miguel DeQuadros
Book Image

Mastering iOS Game Development

By: Peter Ahlgren, Miguel DeQuadros

Overview of this book

iOS is an operating system for Apple manufactured phones and tablets. Mobile gaming is one of the fastest-growing industries, and compatibility with iOS is now becoming the norm for game developers. SpriteKit is part of the native SDK from Apple, and enables developers to make simple entry into game development without unnecessary overhead and a long learning process. SpriteKit also provides other functionality that is useful for games, including basic sound playback support and physics simulation. In addition, Xcode provides built-in support for SpriteKit so that you can create complex special effects and texture atlases directly in Xcode. This combination of framework and tools makes SpriteKit a good choice for games and other apps that require similar kinds of animation. Become a master in iOS game development through this fast and fun guide! In the beginning, we’ll tell you everything you need to plan and design your game. You’ll then start developing your game through step-by-step instructions using the various built-in technologies of Xcode. From there on, we discuss how to deploy your game to the iOS App Store, as well as monetizing it to make more revenue. You will also learn advanced techniques to improve your game playing experience, including better multi-tasking, improved performance optimization, battery management, and more. To end the book off, we’ll show you how to update your game with different features, then port the update to the App Store.
Table of Contents (15 chapters)

Collision detection


We all know that collision detection is imperative to any game. Regardless of whether it's a hockey game, or Call of Angry eight year olds, the game needs to detect collisions of hockey pucks, bullets, swords, feet on the ground—you name it and there are a ton of collisions that need to be detected. For our game, we are only going to detect simple boxes colliding with each other between the player and enemies, the platforms, and the bullets colliding with enemies.

We are going to make things super easy; first we are going to detect the player's bounding box.

Note

What's a bounding box? Simple! Think of when you're creating your sprites; there's a box surrounding your image? You could think of a collision bounding box like that, the small box that your sprite fits in or within a defined space. You can (and we will) adjust the size of the bounding box to fit the sprite; you can have it larger or smaller depending on your needs.

With that all explained, let's hop into our Player...