| | | Copyright |
| | | Acknowledgments |
| | | Introduction |
| | | | What's Different About This Book |
| | | | What's in This Book? |
| | | | System Requirements |
| | | | Free Stuff on the CD |
| | | | Who Am I? |
| | | Part 1: The Really Basic Stuff |
| | | | Chapter 1. What it Takes to be a Game Programmer |
| | | | Programming Skills |
| | | | Computer Graphics Skills |
| | | | Game Design Skills |
| | | | Art Skills |
| | | | Sound and Music Skills |
| | | | Summary |
| | | | Chapter 2. Writing C++ Programs |
| | | | Introducing the Dev-C++ Compiler |
| | | | Programming in C++ |
| | | | Essential Math Operators |
| | | | Loops |
| | | | While Loops |
| | | | Do-while loops |
| | | | Windows Programming |
| | | | Game Programming |
| | | | Summary |
| | | Part 2: ObjectOriented Programming in Games |
| | | | Chapter 3. Introducing Object-Oriented Programming |
| | | | Software Objects |
| | | | Classes |
| | | | Logical Operators |
| | | | The If-Else Statement |
| | | | Namespaces and Scope Resolution |
| | | | A Brief Word About Structures |
| | | | Summary |
| | | | Chapter 4. Introducing the LlamaWorks2D Game Engine |
| | | | A Step-by-Step Overview |
| | | | How Does Llamaworks2D Work? |
| | | | A Stationary Ball |
| | | | A Bouncing Ball |
| | | | Getting Good Results |
| | | | Summary |
| | | | Chapter 5. Function and Operator Overloading |
| | | | What Is Overloading? |
| | | | Implementing a Vector Class with Overloading |
| | | | Summary |
| | | | Chapter 6. Inheritance: Getting a Lot for a Little |
| | | | What Is Inheritance? |
| | | | Deriving Classes |
| | | | Protected Members |
| | | | Overriding Base Class Functions |
| | | | Customizing Your Game with Inheritance |
| | | | Summary |
| | | Part 3: The Essentials of Game Development |
| | | | Chapter 7. Program Structure |
| | | | Program Structure |
| | | | File Structure |
| | | | A Game Called Ping |
| | | | Summary |
| | | | Chapter 8. Sound Effects and Music |
| | | | Sound Effects and Music Are Emotion |
| | | | Storing Sound Data |
| | | | Sound Effects in LlamaWorks2D |
| | | | Noise, Sweet Noise |
| | | | Play That Funky Music, Geek Boy |
| | | | Summary |
| | | Part 4: Graduating to Better C++ |
| | | | Chapter 9. Floating-Point Math in C++ |
| | | | Getting into the Guts of Floating-Point Numbers |
| | | | Case Study: Floating-Point Numbers and Gamespaces |
| | | | Summary |
| | | | Chapter 10. Arrays |
| | | | What Are Arrays? |
| | | | Declaring and Using Arrays |
| | | | Initializing Arrays |
| | | | Problems with Array Boundaries |
| | | | Summary |
| | | | Chapter 11. Pointers |
| | | | Why Are Pointers Important to Games? |
| | | | Declaring and Using Pointers |
| | | | Pointers and Dynamic Memory Allocation |
| | | | Pointers and Inheritance |
| | | | Arrays Are Pointers in Disguise |
| | | | Summary |
| | | | Chapter 12. File Input and Output |
| | | | Games and File I/O |
| | | | Types of Files |
| | | | Summary |
| | | | Chapter 13. Moving into Real Game Development |
| | | | Sprites that Come Alive |
| | | | High-Speed Input |
| | | | Summary |
| | | Part 5: The Big Payoff |
| | | | Chapter 14. No Slime Allowed: Invasion of the Slugwroths |
| | | | What It Takes to Make a Real Game |
| | | | Essential Game Design |
| | | | Designing Invasion of the Slugwroths |
| | | | Summary |
| | | | Chapter 15. Captain Chloride Gets Going |
| | | | Introducing Captain Chloride |
| | | | Pulling It Together In The Game Class |
| | | | Summary |
| | | | Chapter 16. The World of Captain Chloride |
| | | | The New Captain Chloride |
| | | | Levels in LlamaWorks2D |
| | | | Summary |
| | | | Chapter 17. Captain Chloride Encounters Solid Objects |
| | | | Bumping into a Solid Door |
| | | | Picking Up a Key |
| | | | Making the Door Open and Close |
| | | | Summary |
| | | | Chapter 18. That's a Wrap! |
| | | | Time for Consolidation |
| | | | Enter villains, Stage Left |
| | | | Additions to the Game |
| | | | Epilogue: Not the End |
| | | Glossary |
| | | Index |