C++ Game Animation Programming - Second Edition: Learn modern animation techniques from theory to implementation using C++, OpenGL, and Vulkan (Paperback)

Dunsky, Michael, Szauer, Gabor

  • 出版商: Packt Publishing
  • 出版日期: 2023-12-01
  • 售價: $1,860
  • 貴賓價: 9.5$1,767
  • 語言: 英文
  • 頁數: 480
  • 裝訂: Quality Paper - also called trade paper
  • ISBN: 1803246529
  • ISBN-13: 9781803246529
  • 相關分類: C++ 程式語言OpenGLVulkan
  • 立即出貨 (庫存 < 3)

買這商品的人也買了...

商品描述

Build your own OpenGL or Vulkan application in C++ and use it as a playground to explore the path from basic features to advanced techniques of character animation in modern games with the help of this illustrated guide

Key Features

  • Learn how to create a game skeleton with keyboard and mouse controls along with modern graphics
  • Gain insights into model loading, character animations, inverse kinematics, and debugging techniques
  • Master the art of creating animated characters and controlling their various aspects
  • Purchase of the print or Kindle book includes a free PDF eBook

Book Description

If you‘re fascinated by the complexities of animating video game characters and are curious about the transformation of model files into 3D avatars and NPCs that can explore virtual worlds, then this book is for you.

In this new edition, you’ll learn everything you need to know about game animation, from a simple graphical window to a large crowd of smoothly animated characters. First, you’ll learn how to use modern high-performance graphics, dig into the details of how virtual characters are stored, and load the models and animations into a minimalistic game-like application. Then, you’ll get an overview of the components of an animation system, how to play the animations and combine them, and how to blend from one animation into another. You’ll also get an introduction to topics that will make your programming life easier, such as debugging your code or stripping down the graphical output.

By the end of this book, you’ll have gained deep insights into all the parts of game animation programming and how they work together, revealing the magic that brings life to the virtual worlds on your screen.

What you will learn

  • Create simple OpenGL and Vulkan applications and work with shaders
  • Explore the glTF file format, including its design and data structures
  • Design an animation system with poses, clips, and skinned meshes
  • Find out how vectors, matrices, quaternions, and splines are used in game development
  • Discover and implement ways to seamlessly blend character animations
  • Implement inverse kinematics for your characters using CCD and FABRIK solvers
  • Understand how to render large, animated crowds efficiently
  • Identify and resolve performance issues

Who this book is for

This book is for curious C++ developers, game programmers, game designers, and character animators, either pursuing this as a hobby or profession, who have always wanted to look behind the curtain and see how character animation in games works. The book assumes basic C++ and math knowledge, and you should be able to read code and math formulas to get the most out of this book.

商品描述(中文翻譯)

在這本圖解指南的幫助下,您可以在C++中建立自己的OpenGL或Vulkan應用程式,並將其用作探索現代遊戲中角色動畫從基本功能到高級技術的遊樂場。

主要特點:
- 學習如何使用鍵盤和滑鼠控制創建遊戲框架以及現代圖形
- 瞭解模型加載、角色動畫、逆向運動學和調試技術
- 掌握創建動畫角色並控制其各個方面的藝術
- 購買印刷版或Kindle電子書將包含免費的PDF電子書

如果您對動畫視頻遊戲角色的複雜性感到著迷,並且對將模型文件轉換為可以探索虛擬世界的3D頭像和NPC感到好奇,那麼這本書適合您。

在這本新版中,您將學習有關遊戲動畫的一切,從簡單的圖形窗口到平滑動畫角色的大量人群。首先,您將學習如何使用現代高性能圖形,深入研究虛擬角色的存儲細節,並將模型和動畫加載到極簡主義的類似遊戲的應用程序中。然後,您將獲得有關動畫系統組件的概述,以及如何播放和結合動畫,以及如何從一個動畫混合到另一個動畫。您還將介紹一些可以使您的編程生活更輕鬆的主題,例如調試代碼或簡化圖形輸出。

通過閱讀本書,您將深入了解遊戲動畫編程的所有部分以及它們如何協同工作,揭示了將虛擬世界帶到屏幕上的魔力。

您將學到什麼:
- 創建簡單的OpenGL和Vulkan應用程序並使用著色器
- 探索glTF文件格式,包括其設計和數據結構
- 設計具有姿勢、片段和蒙皮網格的動畫系統
- 瞭解向量、矩陣、四元數和樣條在遊戲開發中的應用
- 發現並實現無縫混合角色動畫的方法
- 使用CCD和FABRIK求解器為角色實現逆向運動學
- 瞭解如何高效地渲染大型動畫人群
- 識別和解決性能問題

這本書適合對C++開發人員、遊戲程序員、遊戲設計師和角色動畫師感到好奇的人,無論是作為業餘愛好還是專業人士,他們一直想要看看遊戲中的角色動畫是如何運作的。本書假設您具備基本的C++和數學知識,並且能夠閱讀代碼和數學公式,以充分利用本書的內容。

目錄大綱

  1. Creating the Game Window
  2. Building an OpenGL 4 Renderer
  3. Building a Vulkan Renderer
  4. Working with Shaders
  5. Adding Dear ImGui to show valuable information
  6. Understanding Vector and Matrix
  7. A Primer on Quaternions and Splines
  8. Loading Models in the glTF format
  9. The Model Skeleton and Skin
  10. About Poses, Frames, and Clips
  11. Blending between Animations
  12. Cleaning up the User Interface
  13. Implementing Inverse Kinematics
  14. Creating Instanced Crowds
  15. Measuring Performance and Optimizing the Code

目錄大綱(中文翻譯)

- 建立遊戲視窗
- 建立一個 OpenGL 4 渲染器
- 建立一個 Vulkan 渲染器
- 使用著色器
- 添加 Dear ImGui 以顯示有價值的資訊
- 理解向量和矩陣
- 關於四元數和樣條的入門知識
- 載入 glTF 格式的模型
- 模型的骨架和蒙皮
- 關於姿勢、幀和片段的介紹
- 在動畫之間進行混合
- 清理使用者介面
- 實現反向運動學
- 創建實例化群體
- 測量性能並優化代碼