Table of Contents : Extended
Introduction
History of this book
About this book
iOS game development: a history
What you need
Who this book is for
How to use this book
What’s ahead: an overview
Section I: Getting started
Section II: Physics and nodes
Section III: Tile Maps
Section IV: Juice
Section V: Other Platforms
Section VI: Advanced Topics
Section VI: Bonus chapter
Book source code and forums
Book updates
License
Acknowledgements
Section I: Getting Started
Chapter 1: Sprites
Getting started
Displaying a sprite
Challenges
Chapter 2: Manual Movement
The SpriteKit game loop
Moving the zombie
Rotating the zombie
Challenges
Chapter 3: Actions
Move action
Sequence action
Wait-for-duration action
Run-block action
Reversing actions
Repeating actions
Periodic spawning
Remove-from-parent action
Animation action
Stopping action
Scale action
Rotate action
Group action
Collision detection
The SpriteKit game loop, round 2
Sound action
Sharing actions
Challenges
Chapter 4: Scenes
Win and lose conditions
Creating a new scene
Transitioning to a scene
Creating a custom scene initializer
Background music
Challenges
Chapter 5: Camera
Lights, camera, action!
A scrolling background
An endlessly scrolling background
Fixing the gameplay
Challenges
Challenge 1: Fixing the enemies
Chapter 6: Labels
Built-in fonts and font families
Adding a label to Zombie Conga
Alignment modes
Loading custom fonts
Updating the label text
Challenges
Section II: Physics and Nodes
Chapter 7: Scene Editor
Getting started
Getting started with the scene editor
File references
Animations and action references
More about the timeline
Challenges
Chapter 8: Beginning Physics
Physics in SpriteKit
Getting started
Your first playground
Creating a SpriteKit playground
Circular bodies
Edge loop bodies
Rectangular bodies
Custom-shaped bodies
Visualizing the bodies
Bodies with complex shapes
Properties of physics bodies
Applying an impulse
Challenges
Chapter 9: Intermediate Physics
Getting started
Custom node classes
Connecting sprites to variables
Adding physics
Introducing SKTUtils
Background music
Controlling your bodies
Finishing touches
Challenges
Chapter 10: Advanced Physics
Getting started
Introducing Level 2
Loading levels
Scene editor, round 2
An overview of Joints
Joints in use
The SpriteKit game loop, Round 4
An overview of Constraints
Creating and removing joints dynamically
Compound shapes
Level progression
Challenges
Chapter 11: Crop, Video, and Shape Nodes
Getting started
Crop nodes
Video nodes
Shape nodes
Challenges
Section III: Tile Maps
Chapter 12: Beginning Tile Maps
Getting started
Creating a tile set
Creating a tile map
Adjacency groups
Adding the player
Adding a camera
Player animations
Challenges
Chapter 13: Intermediate Tile Maps
Tile map classes
Replacing tiles with SKNodes
Physics categories
Obstacles and physics
Tile user data
Creating tile maps in code
Power-ups with tile maps
Breakables
Challenge: Add a breakable tree
Chapter 14: Saving and Loading Games
Head-up display
Game timers
Winning the game
Game state management
Changing levels
Scene user data
Opening and closing the app
Saving games with NSCoding
Loading the game
Cleaning up
Challenge
Section IV: Juice
Chapter 15: Making Drop Charge
Getting started
Building the game world in the scene editor
Writing the gameplay code
Game Over, man!
Challenges
Chapter 16: Particle Systems
Getting started
Programmatic particle systems
Visually-created particle systems
Challenges
Chapter 17: Juice Up Your Game
Getting started
Three steps for adding juice
Music and sound effects
Frame animation
Particle effects
Screen effects
Sprite effects
Finishing touches
Challenge
Where to go from here?
Section V: Other Platforms
Chapter 18: macOS Games
Cross-platform strategies
Creating platform targets
Creating a new target
Events
Scaling
Going deep
Challenge
Chapter 19: tvOS Games
Design considerations
Review
The remote
Finishing touches
Chapter 20: watchOS Games
Designing games for your wrist
Review
Gesture recognizers
Working with the Digital Crown
The accelerometer
Haptic feedback
Finishing touches
Where to go from here?
Section VI: Advanced Topics
Chapter 21: Game Center Achievements
Getting started
Introducing Game Center
Configuring your app to use Game Center
Authenticating local players
Adding achievements
Initializing the built-in user interface
Challenges
Chapter 22: Game Center Leaderboards
Getting started
Authenticating the local player
Creating a leaderboard strategy
Configuring leaderboards in iTunes Connect
Reporting scores to Game Center
Displaying leaderboards
Leaderboard sets
Security in Game Center
Challenges
Chapter 23: ReplayKit
Getting started
Integrating ReplayKit
Creating a recording strategy
Modifying the user interface
Checking for availability
Starting and stopping recordings
Previewing and sharing recordings
Where to go from here?
Challenges
Section VII: Bonus Section
Chapter 24: 2D Art for Programmers
Choose your path: Hire or DIY?
How to find and hire an artist
Paying your artist
Getting started
Begin with a sketch
Getting the sketch into Illustrator
Tracing the sketch with vector lines
Custom stroke widths
Coloring your artwork
A bit about shadow and light
Exporting PNG files
Challenges
Conclusion