
Mastering C++ Game Animation Programming: Enhance your skills with advanced game animation techniques in C++, OpenGL, and Vulkan
Author(s): Michael Dunsky (Author)
- Publisher: Packt Publishing
- Publication Date: 28 Mar. 2025
- Language: English
- Print length: 544 pages
- ISBN-10: 1835881920
- ISBN-13: 9781835881927
Book Description
Develop a compact game engine–like animation application in C++ using OpenGL 4 or Vulkan through hands-on implementation in this part-color guide
Key Features
- Learn how to build a game engine–like skeleton application using a modern graphics API
- Explore compute shaders, visual selection, UI creation, visual programming, configuration file handling, collision detection, behavior controls, and more
- Create your own virtual world with naturally acting inhabitants
- Purchase of the print or Kindle book includes a free PDF eBook
Book Description
With two decades of programming experience across multiple languages and platforms, expert game developer and console porting programmer Michael Dunsky guides you through the intricacies of character animation programming. This book tackles the common challenges developers face in creating sophisticated, efficient, and visually appealing character animations.
You’ll learn how to leverage the Open Asset Import Library for easy 3D model loading and optimize your 3D engine by offloading computations from the CPU to the GPU. The book covers visual selection, extended camera handling, and separating your application into edit and simulation modes. You’ll also master configuration storage to progressively build your virtual world piece by piece.
As you develop your engine-like application, you’ll implement collision detection, inverse kinematics, and expert techniques to bring your characters to life with realistic visuals and fluid movement. For more advanced animation and character behavior controls, you’ll design truly immersive and responsive NPCs, load real game maps, and use navigation algorithms, enabling the instances to roam freely in complex environments.
By the end of this book, you’ll be skilled at designing interactive virtual worlds inhabited by lifelike NPCs that exhibit natural, context-aware behaviors.
What you will learn
- Master the basics of the Open Asset Import Library
- Animate thousands of game characters
- Extend ImGui with more advanced control types
- Implement simple configuration file handling
- Explore collision detection between 3D models and world objects
- Combine inverse kinematics and collision detection
- Work with state machines, behavior trees, and interactive NPC behaviors
- Implement navigation for NPC movement in unknown terrains
Who this book is for
This book is for experienced C++ developers, game programmers, and character animators who already have basic knowledge of character animation but are curious to learn more. The book assumes advanced C++ knowledge and is ideal for those eager to delve into advanced animation techniques and create interactive virtual worlds.
Table of Contents
- Working with Open Asset Import Library
- Moving Animation Calculations from CPU to GPU
- Adding a Visual Selection
- Enhancing Application Handling
- Saving and Loading the Configuration
- Extending Camera Handling
- Enhancing Animation Controls
- An Introduction to Collision Detection
- Adding Behavior and Interaction
- Advanced Animation Blending
- Loading a Game Map
- Advanced Collision Detection
- Adding Simple Navigation
- Creating Immersive Interactive Worlds
Editorial Reviews
Review
“Mastering C++ Game Animation Programming stands as a valuable resource for seasoned developers aiming to advance their skills in game animation. Its thorough approach, combined with practical examples and expert insights, makes it a noteworthy addition to the libraries of professionals who need to work with game animation features.”
Charles YEH, Senior Software Engineer at Unity
“I enjoyed going through this book. It is well written, and the topic is particularly interesting. Implementing skinned mesh animation from the ground up is fiddly, and as a result, I’ve noticed many aspiring developers often just jump to using a heavy (often overkill) game engine rather than tackle this challenge head-on, which is a shame. This book makes great strides to resolve that.”
Karsten Pedersen, Course Leader at Bournemouth University
“It’s way more than just an animation book. It also dives into game maps, collision detection, navigation, optimization—lots of stuff that’s super useful for overall game development.
What I really appreciated is that it doesn’t just stick to key-frame and skeletal animation. It also introduces morph animation and shows how to blend between different techniques, which you don’t see explained clearly in many other places.
The book is hands-on. Each chapter builds on the last, and it was fun to see real progress as I followed along. By the end, I had built my own model and animation viewer/editor, which felt like a big achievement.
One part that really stood out to me was the section on the Assimp library. I had tried using it before and struggled to find clear documentation, but this book walked me through it and saved me a ton of time. Huge thanks to Michael for that. […]”
George Li, Sr. Software Engineer and Development Consultant at Unity, Author of the book Unreal Engine 5 Game Development with C++ Scripting
“I have a deep love for animation, and it is a topic that I want to learn more about even though (or maybe because!) I don’t tackle it on a daily basis. What’s even better is that this book contains a lot of information about game engines and rendering in general, something that should allow readers to delve into and learn about many of the fundamental principles that power the 3D industry at large. I am very happy that this book exists, one that goes quite deep into these topics, which are often hidden behind the blinding glow of other more immediate animation topics.”
Brais Brenlla Ramos, Senior UE4 developer at AccuCities, Author of Unreal Engine 5 Shaders and Effects Cookbook
About the Author
Michael Dunsky is an electronics engineer, console porting programmer, and game developer with more than 20 years of programming experience. He started with BASIC at the young age of 14 and expanded his portfolio over the years to include assembly language, C, C++, Java, Python, VHDL, OpenGL, GLSL, and Vulkan. During his career, he also gained extensive knowledge of Linux, virtual machines, server operation, and infra-structure automation. Michael holds a Master of Science degree in Computer Sci-ence from the FernUniversität in Hagen with a focus on computer graphics, parallel programming, and software systems.
Wow! eBook![EA SPORTS FC 25 Standard Edition - Nintendo Switch [Digital Code]-Wow! eBook](https://m.media-amazon.com/images/I/71mFl6jVegL._SX522_.jpg)


