
Practical C++ Game Programming with Data Structures and Algorithms
Description
Alles über E-Books | Antworten auf Fragen rund um E-Books, Kopierschutz und Dateiformate finden Sie in unserem Info- & Hilfebereich.
Key Features
Solve real-world game dev problems with expert C++ data structures and algorithms
Learn through practical, executable code instead of abstract theory or pseudocode
Build responsive, high-performance games with advanced rendering and AI techniques
Print or Kindle purchase includes a free PDF eBook
Book DescriptionGame development demands performance-driven solutions-from rendering complex 3D scenes to managing AI behavior and handling animations. This hands-on book guides you in solving these challenges using high-performance C++ data structures and algorithms. The authors distill their decades of combined industry experience to help you apply practical C++ techniques to create smooth, scalable, and intelligent games. Instead of pseudocode or abstract theory, you'll work with real, executable examples that translate directly to your projects. Demos in this book have been developed based on raylib library, providing accessible and efficient foundations for learning. Opening with a structured overview of algorithmic thinking in C++ game development, the book covers advanced algorithms and their applications in real-world game scenarios. You'll implement data structures that optimize game functionality, solve algorithmic problems efficiently, and enhance gameplay with robust AI and rendering techniques. In addition, the key focus is collision detection, 2D/3D rendering, animation, camera controls, and machine learning-driven AI, all through practical, executable C++ code. By the end of this book, you'll be able to confidently apply advanced C++ techniques to develop efficient, scalable, and feature-rich gameplay systems for modern games.What you will learn
Apply data structures and algorithms to solve real game development problems
Apply rendering techniques, such as shader, lighting, soft shadow, particles, and quad-tree terrain
Build dynamic camera systems like third-person, rail, top-down, and split-screen views
Animate skeletal characters using interpolation and inverse kinematics
Implement NPC AI with FSM, behavior tree, A* pathfinding, and steering
Explore ML with neural networks in a hands-on AI turret defense project
Performance and memory optimization using techniques like object pooling and LOD
Who this book is forThis book is for experienced game programmers, technical artists, and developers looking to refine their skills through real-world C++ solutions. A foundational understanding of C++, data structures, and core game development principles will be beneficial. Whether you want to deepen your expertise or are looking for a reliable reference guide, this book will be your trusted companion in building better games.
All prices
More details
Other editions
Additional editions

Persons
George's fascination with video games was sparked during his college studies, igniting a passion that would shape his professional journey. During the early stages of his game development endeavors, George immersed himself in technologies such as Visual Basic, C/C++, DirectX, OpenGL, Windows GUI, SQL, and so on. These foundational experiences laid the groundwork for his subsequent success in the industry.
Throughout his career, George has made substantial contributions to various commercial games. Notable titles on his portfolio include Unity demo and starter kit games, Sandbox, Halo Infinite, Magic Arena, Stela, Dead Rising 2, The Bigs 2, and others. His involvement in these projects has allowed him to gain extensive knowledge and practical experience in a wide range of domains, including programming, game engines, gameplay and AI, graphics, animation, multiplayer, game physics, frontend, and multiplatform. In practical applications, George has used Unreal, Unity, and some propriety game engines in the development of real game projects.
In addition to his achievements as a game developer, George has also honed his teaching abilities during his eight years of college-level instruction. He has shared his knowledge and expertise with aspiring developers, serving as a lecturer at the Vancouver Film School, College of Interactive Arts, and Hefei Union University. While teaching at Vancouver Film School, George guided students through the intricacies of Unreal Engine, helping them build a strong foundation in professional game development. Charles Shih-I Yeh pursued his computer science studies at the University of Southern California before embarking on a career in the video game industry in the early 2000s. He has held various pivotal roles in game programming, including building proprietary game engines, crafting Digital Content Creation (DCC) tools to streamline production pipelines, and designing engaging gameplay mechanics alongside robust multiplayer and MMORPG tournament services.
Charles is also passionate and committed to sharing expertise and insights by delivering lectures on game programming at several esteemed universities. He is also the author of two game design books as well as the official translator of several famous game programming books, such as Game Programming Gems 4, into his native language, Mandarin.
Content
Gearing Up: C++ for Game Development
Data Structures in Action: Building Game Functionality
Algorithms Commonly Utilized in Game Development
2D Rendering and Effects
The Camera and Camera Controls
3D Graphics Rendering
Rendering a 3D Game World
Animating Your Characters
Building AI Opponents
Machine Learning Algorithms for Game AI
Continuing Your Learning Journey
Contents
- Preface
- Part 1: Data Structure and Algorithm Fundamentals
- Gearing Up: C++ for Game Development
- Data Structures in Action: Building Game Functionality
- Algorithms Commonly Utilized in Game Development
- Part 2: Graphics Algorithms in Practice
- 2D Rendering and Effects
- The Camera and Camera Controls
- 3D Graphics Rendering
System requirements
File format: ePUB
Copy protection: Adobe-DRM (Digital Rights Management)
System requirements:
- Computer (Windows; MacOS X; Linux): Install the free reader Adobe Digital Editions prior to download (see eBook Help).
- Tablet/smartphone (Android; iOS): Install the free app Adobe Digital Editions or the app PocketBook before downloading (see eBook Help).
- E-reader: Bookeen, Kobo, Pocketbook, Sony, Tolino and many more (not Kindle).
The file format ePub works well for novels and non-fiction books – i.e., „flowing” text without complex layout. On an e-reader or smartphone, line and page breaks automatically adjust to fit the small displays.
This eBook uses Adobe-DRM, a „hard” copy protection. If the necessary requirements are not met, unfortunately you will not be able to open the eBook. You will therefore need to prepare your reading hardware before downloading.
Please note: We strongly recommend that you authorise using your personal Adobe ID after installation of any reading software.
For more information, see our ebook Help page.
File format: ePUB
Copy protection: without DRM (Digital Rights Management)
System requirements:
- Computer (Windows; MacOS X; Linux): Use a reader that can handle the file format ePUB, such as Adobe Digital Editions or FBReader – both free (see eBook Help).
- Tablet/Smartphone (Android; iOS): Install the free app Adobe Digital Editions or the app PocketBook (see eBook Help).
- E-reader: Bookeen, Kobo, Pocketbook, Sony, Tolino and many more (not Kindle).
The file format ePUB works well for novels and non-fiction books – i.e., 'flowing' text without complex layout. On an e-reader or smartphone, line and page breaks automatically adjust to fit the small displays.
This eBook does not use copy protection or Digital Rights Management
For more information, see our eBook Help page.