Cover image for Game Coding Complete.
Game Coding Complete.
Title:
Game Coding Complete.
Author:
McShaffry, Mike.
ISBN:
9781598636963
Personal Author:
Edition:
3rd ed.
Physical Description:
1 online resource (945 pages)
Contents:
CONTENTS -- INTRODUCTION -- PART I: GAME PROGRAMMING FUNDAMENTALS -- CHAPTER 1 WHAT IS GAME PROGRAMMING REALLY LIKE? -- The Good -- The Bad -- The Ugly -- It's All Worth It, Right? -- CHAPTER 2 WHAT'S IN A GAME? -- Game Architecture -- Applying the Game Architecture -- Application Layer -- Game Logic -- Game View for the Human Player -- Game Views for AI Agents -- Networked Game Architecture -- Do I Have to Use DirectX? -- Other Bits and Pieces -- Further Reading -- CHAPTER 3 CODING TIDBITS AND STYLE THAT WILL SAVE YOU -- Smart Design Practices -- Smart Pointers and Naked Pointers -- Using Memory Correctly -- Mike's Grab Bag of Useful Stuff -- Developing the Style That's Right for You -- Further Reading -- CHAPTER 4 BUILDING YOUR GAME -- A Little Motivation -- Creating a Project -- Source Code Repositories and Version Control -- Building the Game: A Black Art? -- Creating Build Scripts -- Multiple Projects and Shared Code -- Some Parting Advice -- PART II: GET YOUR GAME RUNNING -- CHAPTER 5 GAME INITIALIZATION AND SHUTDOWN -- Initialization 101 -- Some C++ Initialization Pitfalls -- The Game's Application Layer -- Stick the Landing: A Nice Clean Exit -- Getting In and Getting Out -- CHAPTER 6 CONTROLLING THE MAIN LOOP -- Inside the Main Loop -- A Base Class for Game Actors and Game Logic -- Can I Make a Game Yet? -- CHAPTER 7 LOADING AND CACHING GAME DATA -- Game Resources: Formats and Storage Requirements -- Resource Files -- The Resource Cache -- I'm Out of Cache -- CHAPTER 8 PROGRAMMING INPUT DEVICES -- Getting the Device State -- Using DirectInput -- A Few Safety Tips -- Working with the Mouse (and Joystick) -- Working with a Game Controller -- Working with the Keyboard -- What, No Dance Pad? -- CHAPTER 9 USER INTERFACE PROGRAMMING -- The Human's Game View -- A WASD Movement Controller -- Screen Elements -- A Custom MessageBox Dialog.

Modal Dialog Boxes -- Controls -- Control Identification -- Hit Testing and Focus Order -- Control State -- More Control Properties -- Some Final User Interface Tips -- PART III: CORE GAME TECHNOLOGIES -- CHAPTER 10 GAME EVENT MANAGEMENT -- Game Events -- What Game Events Are Important? -- Distinguishing Events from Processes -- Further Reading -- CHAPTER 11 SCRIPTING WITH LUA -- What is Scripting? -- Common Scripting Paradigms -- Introducing Lua -- Getting Started with a Lua Wrapper-LuaPlus -- Mind the Gap! -- Wanna Buy a Bridge? -- I'm Totally Wired -- Do You Hear What I Hear? -- Let's Get OOP-Able! -- Debugging Script -- Famous Last Words: "An Exercise for the Reader" -- References -- CHAPTER 12 GAME AUDIO -- How Sound Works -- Game Sound System Architecture -- Other Technical Hurdles -- Some Random Notes -- The Last Dance -- CHAPTER 13 3D BASICS -- 3D Graphics Pipeline -- 3D Math 101 -- C++ Math Classes -- Enough Math-Please Stop -- 3D Graphics-It's Just the Beginning -- CHAPTER 14 3D SCENES -- The Plane Class -- The Frustum Class -- Scene Graph Basics -- Special Scene Graph Nodes -- What About Shaders? -- What's Missing? -- Still Hungry? -- Further Reading -- CHAPTER 15 COLLISION AND SIMPLE PHYSICS -- Mathematics for Physics Refresher -- Choosing a Physics SDK -- Object Properties -- Collision Hulls -- Using a Collision System -- Integrating a Physics SDK -- But Wait, There's So Much More -- CHAPTER 16 NETWORK PROGRAMMING PRIMER -- How the Internet Works -- Sockets API -- Making a Multiplayer Game with Sockets -- Core Client-Side Classes -- Core Server-Side Classes -- Wiring Sockets into the Event System -- Gosh, if It's That Easy -- PART IV: ADVANCED TOPICS AND BRINGING IT ALL TOGETHER -- CHAPTER 17 AN INTRODUCTION TO GAME AI -- Intro to AI concepts -- Movement -- Path Finding -- Simple Decision Making -- Advanced Decision Making.

Types of Game AI -- Further Reading -- CHAPTER 18 INTRODUCTION TO MULTIPROGRAMMING -- What Multiprogramming Does -- Creating Threads -- Process Synchronization -- Interesting Threading Problems -- Thread Safety -- Multithreading Classes -- Background Decompression of a ZIP File -- Further Work -- About the Hardware -- About the Future -- CHAPTER 19 A GAME OF TEAPOT WARS! -- Game Actors -- Game Events -- The Application Layer -- The Game Logic -- The Game View for a Human Player -- The AI View and Listener -- More Teapot Wars, if You Are Willing -- CHAPTER 20 A SIMPLE GAME EDITOR IN C# -- What Should a Level Editor Do? -- The Editor Architecture -- Creating the DLL -- The C# Editor Application -- Getting Information About Actors in the Level -- Creating, Changing, and Removing Actors -- Saving and Loading Levels -- Future Work -- Special Thanks -- Further Reading -- CHAPTER 21 DEBUGGING YOUR GAME -- The Art of Handling Failure -- Debugging Basics -- Debugging Techniques -- Different Kinds of Bugs -- Parting Thoughts -- Further Reading -- CHAPTER 22 DRIVING TO THE FINISH -- Finishing Issues -- Dealing with Big Trouble -- The Light-It's Not a Train After All -- INDEX -- A -- B -- C -- D -- E -- F -- G -- H -- I -- J -- K -- L -- M -- N -- O -- P -- Q -- R -- S -- T -- U -- V -- W -- X -- Y -- Z.
Local Note:
Electronic reproduction. Ann Arbor, Michigan : ProQuest Ebook Central, 2017. Available via World Wide Web. Access may be limited to ProQuest Ebook Central affiliated libraries.
Electronic Access:
Click to View
Holds: Copies: