书籍简介:
《游戏引擎架构》(第 2 版)涵盖游戏引擎软件开发的理论及实践知识,并在第 1 版的基础上对多个主题进行了更新。本书中讨论的概念及技巧被实际应用于现实中的游戏工作室(如艺电及顽皮狗)。虽然书中采用的例子通常依托于一些专门的技术,但是讨论范围远超某个引擎或API。另外,书中提供的参考文献及引用也非常有价值,可让读者继续深入游戏开发的任何特定方向。本书为大学程度的游戏编程课程而编写,但也适合软件工程师、游戏开发业余爱好者,以及游戏产业的从业人员阅读。通过阅读本书,资历较浅的游戏工程师可以巩固他们所学的游戏技术及引擎架构的知识,专注某一领域的程序员也能从本书全面的介绍中获益。《游戏引擎架构》(第2版)不仅可作为知识扫盲的工具,以及延伸学习的跳板,更能让读者扎实地理解游戏引擎中每个工程范畴中的理论与典型实践。本书将助你走过游戏引擎架构那迷人、全方位的难忘之旅。本书讲解商业游戏引擎中各个子系统的理论基础,并论述了实现这些子系统通常所需的数据结构、算法及软件接口。本书聚焦在引擎本身,其中包括底层基础系统、渲染引擎、碰撞系统、物理模拟、角色动画及音频。而在“游戏性基础层”中深入探讨游戏对象模型、世界编辑器、事件系统与脚本系统。书中还涉及一些游戏编程方面的技术,如玩家机制、摄像头和人工智能。
作者简介:
叶劲峰
出版时间:
2019年12月
章节目录:
第 2 版序言 …………………………………..xxxiii
第 1 版序言 …………………………………..xxxv
第 2 版前言 …………………………………..xxxvii
第 1 版前言 …………………………………..xxxviii
致谢 ………………………………………xl
第 I 部分 基 础
第 1 章 导论 …………………………………3
1.1 典型游戏团队的结构 …………………………..4
1.1.1 工程师 ……………………………….5
1.1.2 艺术家 ……………………………….5
1.1.3 游戏设计师 ……………………………..6
1.1.4 制作人 ……………………………….7
1.1.5 其他工作人员 …………………………….7
1.1.6 发行商及工作室 ……………………………7
1.2 游戏是什么 ……………………………….8
1.2.1 电子游戏作为软实时模拟………………………..8
1.3 游戏引擎是什么 ……………………………..10
1.4 不同游戏类型的引擎差异 …………………………11
1.4.1 第一人称射击游戏 …………………………..12
1.4.2 平台及其他第三人称游戏………………………..13
1.4.3 格斗游戏 ………………………………15
1.4.4 竞速游戏 ………………………………17
1.4.5 实时策略游戏 …………………………….18
1.4.6 大型多人在线游戏 …………………………..20
1.4.7 玩家创作内容 ? …………………………….21
1.4.8 其他游戏类型 …………………………….23
1.5 游戏引擎概览 ………………………………24
1.5.1 雷神之锤引擎家族 …………………………..24
1.5.2 虚幻引擎 ………………………………25
1.5.3 Source 引擎 ……………………………..26
1.5.4 DICE 的寒霜引擎 ? ………………………….26
1.5.5 CryEngine ? ……………………………..26
1.5.6 索尼的 PhyreEngine ? …………………………27
1.5.7 微软的 XNA Game Studio……………………….27
1.5.8 Unity ? ……………………………….27
1.5.9 供非程序员使用的二维游戏引擎 ? …………………….28
1.5.10 其他商业引擎 ……………………………29
1.5.11 专有内部引擎 ……………………………29
1.5.12 开源引擎………………………………29
1.6 运行时引擎架构 ……………………………..30
1.6.1 目标硬件 ………………………………32
1.6.2 设备驱动程序 …………………………….32
1.6.3 操作系统 ………………………………32
1.6.4 第三方软件开发包和中间件……………………….33
1.6.5 平台独立层 ……………………………..36
1.6.6 核心系统 ………………………………36
1.6.7 资源管理器 ……………………………..37
1.6.8 渲染引擎 ………………………………37
1.6.9 剖析和调试工具 ……………………………41
1.6.10 碰撞和物理……………………………..42
1.6.11 动画 ………………………………..43
1.6.12 人体学接口设备 …………………………..44
1.6.13 音频 ………………………………..45
1.6.14 在线多人/网络游戏 ………………………….46
1.6.15 游戏性基础系统 …………………………..47
1.6.16 个别游戏专用子系统 …………………………50
1.7 工具及资产管道 ……………………………..50
1.7.1 数字内容创作工具 …………………………..50
1.7.2 资产调节管道 …………………………….52
1.7.3 世界编辑器 ……………………………..54
1.7.4 资源数据库 ? ……………………………..55
1.7.5 一些构建工具的方法 ………………………….55
第 2 章 专业工具 ………………………………58
2.1 版本控制 …………………………………58
2.1.1 为何使用版本控制 …………………………..58
2.1.2 常见的版本控制系统 ………………………….59
2.1.3 Subversion 和 TortoiseSVN 概览 …………………….60
2.1.4 在 Google 上设置代码版本库………………………61
2.1.5 安装 TortoiseSVN …………………………..61
2.1.6 文件版本、更新和提交 …………………………63
2.1.7 多人签出、分支及合并 …………………………64
2.1.8 删除 ………………………………..66
2.2 微软 Visual Studio…………………………….66
2.2.1 源文件、头文件及翻译单元 ……………………….67
2.2.2 程序库、可执行文件及动态链接库…………………….67
2.2.3 项目及解决方案 ……………………………68
2.2.4 生成配置 ………………………………69
2.2.5 调试代码 ………………………………75
2.3 剖析工具 …………………………………81
2.3.1 剖析器列表 ……………………………..83
2.4 内存泄漏和损坏检测 …………………………..83
2.5 其他工具
封面图: