Book Image

Swift Game Development - Third Edition

By : Siddharth Shekar, Stephen Haney
Book Image

Swift Game Development - Third Edition

By: Siddharth Shekar, Stephen Haney

Overview of this book

Swift is the perfect choice for game development. Developers are intrigued by Swift and want to make use of new features to develop their best games yet. Packed with best practices and easy-to-use examples, this book leads you step by step through the development of your first Swift game. The book starts by introducing Swift's best features – including its new ones for game development. Using SpriteKit, you will learn how to animate sprites and textures. Along the way, you will master physics, animations, and collision effects and how to build the UI aspects of a game. You will then work on creating a 3D game using the SceneKit framework. Further, we will look at how to add monetization and integrate Game Center. With iOS 12, we see the introduction of ARKit 2.0. This new version allows us to integrate shared experiences such as multiplayer augmented reality and persistent AR that is tied to a specific location so that the same information can be replicated on all connected devices. In the next section, we will dive into creating Augmented Reality games using SpriteKit and SceneKit. Then, finally, we will see how to create a Multipeer AR project to connect two devices, and send and receive data back and forth between those devices in real time. By the end of this book, you will be able to create your own iOS games using Swift and publish them on the iOS App Store.
Table of Contents (22 chapters)
Swift Game Development Third Edition
Contributors
Preface
Other Books You May Enjoy
Index

Physics category masks


You can assign physics categories to each physics body in your game. These categories allow you to specify the bodies that should collide, the bodies that should be in direct contact, and the bodies that should pass through each other without any event. When two bodies try to share the same space, the physics simulation will compare each body's categories and test whether collision or contact events should fire.

Our game will include physics categories for the penguin, the ground, the coins, and the enemies.

Physics categories are stored as 32-bit masks, which allows the physics simulation to perform these tests with processor-efficient bitwise operations. It is not strictly necessary to understand bitwise operations to use physics categories, but it is a nice topic for further reading, if you are interested in enhancing your knowledge. If you are interested, try an internet search for Swift bitwise operations.

Each physics body has three properties you can use to control...