What is included with this book?
Ray Wenderlich is an iPhone developer and gamer and the founder of Razeware, LLC. Ray is passionate about both making apps and teaching others the techniques to make them. He has written a bunch of tutorials about iOS development, available at www.raywenderlich.com.
Acknowledgments xxxiii
About the Authors xxxvii
Part I: Getting Started with Cocos2D 1
Chapter 1: Hello, Cocos2D 3
Downloading and Installing Cocos2D 4
Creating Your First Cocos2D HelloWorld 6
For the More Curious: Understanding the Cocos2D HelloWorld 11
Getting CCHelloWorld on Your iPhone or iPad 20
Summary 22
Challenges 22
Chapter 2: Hello, Space Viking 23
Creating the SpaceViking Project 23
Creating the Space Viking Classes 24
Creating the Background Layer 26
The Gameplay Layer: Adding Ole the Viking to the Game 29
The GameScene Class: Connecting the Layers in a Scene 31
Commanding the Cocos2D Director 34
Adding Movement 35
Texture Atlases 44
For the More Curious: Testing Out CCSpriteBatchNode 52
Fixing Slow Performance on iPhone 3G and Older Devices 53
Summary 54
Challenges 54
Chapter 3: Introduction to Cocos2D Animations and Actions 57
Animations in Cocos2D 57
Space Viking Design Basics 62
Actions and Animation Basics in Cocos2D 66
Using Property List Files to Store Animation Data 67
Organization, Constants, and Common Protocols 69
The GameObject and GameCharacter Classes 74
Summary 82
Challenges 82
Chapter 4: Simple Collision Detection and the First Enemy 83
Creating the Radar Dish and Viking Classes 83
Creating the Viking Class 90
Final Steps 105
Summary 112
Challenges 113
Part II: More Enemies and More Fun 115
Chapter 5: More Actions, Effects, and Cocos2D Scheduler 117
Power-Ups 118
Enemy Robot 125
Adding the PhaserBullet 137
GameplayLayer and Viking Updates 141
For the More Curious: Effects in Cocos2D 145
Summary 149
Exercises and Challenges 149
Chapter 6: Text, Fonts, and the Written Word 151
CCLabelTTF 151
Understanding Anchor Points and Alignment 153
CCLabelBMFont 155
Using Glyph Designer 156
Using the Hiero Font Builder Tool 156
For the More Curious: Live Debugging 160
Summary 165
Challenges 165
Part III: From Level to Game 167
Chapter 7: Main Menu, Level Completed, and Credits Scenes 169
Scenes in Cocos2D 169
Introducing the GameManager 170
Menus in Cocos2D 179
Scene Organization and Images 180
Creating the Main Menu 182
Additional Menus and GameplayLayer 190
For the More Curious: The IntroLayer and LevelComplete Classes 193
Summary 195
Challenges 195
Chapter 8: Pump Up the Volume! 197
Introducing CocosDenshion 197
Importing and Setting Up the Audio Filenames 198
Synchronous versus Asynchronous Loading of Audio 201
Adding the soundEngine to GameObjects 215
Adding Sounds to EnemyRobot 219
Adding Sound Effects to Ole the Viking 222
Adding Music to the Menu Screen 228
For the More Curious: If You Need More Audio Control 229
Summary 230
Challenges 230
Chapter 9: When the World Gets Bigger: Adding Scrolling 231
Adding the Logic for a Larger World 232
Creating a Larger World 235
Scrolling with Parallax Layers 250
Scrolling to Infinity 252
Tile Maps 265
Summary 276
Challenges 276
Part IV: Physics Engines 277
Chapter 10: Basic Game Physics: Adding Realism with Box2D 279
Getting Started 279
Hello, Box2D! 289
Basic Box2D Interaction and Decoration 302
Making a Box2D Puzzle Game 320
Summary 332
Challenges 332
Chapter 11: Intermediate Game Physics: Modeling, Racing, and Leaping 333
Getting Started 334
Creating a Cart with Box2D 346
Making the Cart Move and Jump 356
Summary 374
Challenges 374
Chapter 12: Advanced Game Physics: Even Better than the Real Thing 375
Joints and Ragdolls: Bringing Ole Back into Action 376
Adding Obstacles and Bridges 386
The Boss Fight! 396
Summary 417
Challenges 417
Chapter 13: The Chipmunk Physics Engine (No Alvin Required) 419
What Is Chipmunk? 420
Getting Started with Chipmunk 421
Adding Sprites and Making Them Move 438
Chipmunk and Constraints 455
The Great Escape! 467
Summary 477
Challenges 477
Part V: Particle Systems, Game Center, and Performance 479
Chapter 14: Particle Systems: Creating Fire, Snow, Ice, and More 481
Built-In Particle Systems 482
Getting Started with Particle Designer 485
Creating and Adding a Particle System to Space Viking 489
Summary 494
Challenges 494
Chapter 15: Achievements and Leaderboards with Game Center 495
What Is Game Center? 495
Enabling Game Center for Your App 497
Game Center Authentication 506
Setting Up Achievements 515
Implementing Achievements 518
Setting Up and Implementing Leaderboards 536
Summary 543
Challenges 543
Chapter 16: Performance Optimizations 545
CCSprite versus CCSpriteBatchNode 545
Reusing CCSprites 552
Profiling within Cocos2D 554
Using Instruments to Find Performance Bottlenecks 557
Summary 563
Challenges 563
Chapter 17: Conclusion 565
Where to Go from Here 567
Android and Beyond 567
Final Thoughts 568
Appendix: Principal Classes of Cocos2D 569
Index 571
The New copy of this book will include any supplemental materials advertised. Please check the title of the book to determine if it should include any access cards, study guides, lab manuals, CDs, etc.
The Used, Rental and eBook copies of this book are not guaranteed to include any supplemental materials. Typically, only the book itself is included. This is true even if the title states it includes any access cards, study guides, lab manuals, CDs, etc.