4.23文创礼盒,买2个减5元 读书月福利
欢迎光临中图网 请 | 注册

游戏引擎架构(第2版)

出版社:电子工业出版社出版时间:2018-02-01
开本: 其他 页数: 972
中 图 价:¥153.3(7.0折) 定价  ¥219.0 登录后可看到会员价
加入购物车 收藏
运费6元,满69元免运费
?快递不能达地区使用邮政小包,运费14元起
云南、广西、海南、新疆、青海、西藏六省,部分地区快递不可达
本类五星书更多>

游戏引擎架构(第2版) 版权信息

游戏引擎架构(第2版) 本书特色

√ 引擎为游戏科技之大成,而通用游戏引擎经常无法通用,需要因项目而改造、整合、扩展及优化,因此必须理解其架构、机制和技术 ,才能分析及解决游戏制作中的问题(本书译者在腾讯游戏即担此重任)。 √ 站在*界级专家的肩上,广泛了解、宏观对比(艺电、顽皮狗)*界游戏名作优选方案与实际采用技术、工具,覆盖手游、端游通用的游戏性系统、场景管理、人工智能、物理模拟、前台技术等知识。 √ 涵盖游戏开发技术方方面面:足够细节以使初学者极易理解;巧妙平衡广度与深度以帮助经验丰富的游戏程序员。架构部分细致描述每个子系统的需求、相关技术及与其他子系统的关系。 √ 游戏音频技术内容首度在书中出现,填补领域空白——大篇幅整章讲述开发AAA游戏音频引擎的物理、数学及技术首度曝光;动画系统 、运行时游戏性基础系统部分依旧出彩。 《游戏引擎架构》广受欢迎,成为游戏引擎软件开发理论和实践的完整指南。第2版按当今游戏引擎架构发展趋势更新大量内容,进一步完善对典型游戏引擎各主要模块的讲解,重点新内容包括: 更新了各个主题的信息,包括C++编程语言的*新版本C++11、第8代游戏机Xbox One 和PlayStation 4。 新增了音频技术章节,包含AAA游戏音频引擎所涉及的物理、数学和技术等方面的知识。 更新了多核编程、流水线CPU架构、优化、国际化、赝矢量、格拉斯曼代数、对偶四元数、SIMD矢量数学、内存对齐及抗锯齿等章节。 深入介绍了顽皮狗*新热作《*后生还者》的制作过程。 本书讲解商业游戏引擎中各个子系统的理论基础,并论述了实现这些子系统通常所需的数据结构、算法及软件接口。本书聚焦在引擎本身,其中包括底层基础系统、渲染引擎、碰撞系统、物理模拟、角色动画及音频。而在“游戏性基础层”中深入探讨游戏对象模型、*界编辑器、事件系统与脚本系统。书中还涉及一些游戏编程方面的技术,如玩家机制、摄像头和人工智能。 《游戏引擎架构》(第2版)不仅可作为知识扫盲的工具,以及延伸学习的跳板,更能让读者扎实地理解游戏引擎中每个工程范畴中的理论与典型实践。本书将助你走过游戏引擎架构那迷人、全方位的难忘之旅。

游戏引擎架构(第2版) 内容简介

《游戏引擎架构》(第 2 版)涵盖游戏引擎软件开发的理论及实践知识,并在第 1 版的基础上对多个主题进行了更新。本书中讨论的概念及技巧被实际应用于现实中的游戏工作室(如艺电及顽皮狗)。虽然书中采用的例子通常依托于一些专门的技术,但是讨论范围远超某个引擎或API。另外,书中提供的参考文献及引用也很好有价值,可让读者继续深入游戏开发的任何特定方向。本书为大学程度的游戏编程课程而编写,但也适合软件工程师、游戏开发业余爱好者,以及游戏产业的从业人员阅读。通过阅读本书,资历较浅的游戏工程师可以巩固他们所学的游戏技术及引擎架构的知识,专注某一领域的程序员也能从本书全面的介绍中获益。《游戏引擎架构》(第2版)不仅可作为知识扫盲的工具,以及延伸学习的跳板,更能让读者扎实地理解游戏引擎中每个工程范畴中的理论与典型实践。本书将助你走过游戏引擎架构那迷人、多方面的难忘之旅。本书讲解商业游戏引擎中各个子系统的理论基础,并论述了实现这些子系统通常所需的数据结构、算法及软件接口。本书聚焦在引擎本身,其中包括底层基础系统、渲染引擎、碰撞系统、物理模拟、角色动画及音频。而在“游戏性基础层”中深入探讨游戏对象模型、世界编辑器、事件系统与脚本系统。书中还涉及一些游戏编程方面的技术,如玩家机制、摄像头和人工智能。《游戏引擎架构》广受欢迎,成为游戏引擎软件开发理论和实践的完整指南。第2版按当今游戏引擎架构发展趋势更新大量内容,进一步完善对典型游戏引擎各主要模块的讲解,重点新内容包括:·更新了各个主题的信息,包括C++编程语言的近期新版本C++11、第8代游戏机Xbox One 和PlayStation 4。·新增了音频技术章节,包含AAA游戏音频引擎所涉及的物理、数学和技术等方面的知识。·更新了多核编程、流水线CPU架构、优化、靠前化、赝矢量、格拉斯曼代数、对偶四元数、SIMD矢量数学、内存对齐及抗锯齿等章节。

游戏引擎架构(第2版) 目录

第 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 其他工具 .......................................84 第 3 章 游戏软件工程基础 ..............................85 3.1 重温 C++ 及*佳实践 ...............................85 3.1.1 扼要重温面向对象编程..............................85 3.1.2 编码标准: 为什么及需要多少 ...........................91 3.1.3 C++11 ? ....................................92 3.2 C/C++ 的数据、代码及内存 ............................99 3.2.1 数值表达形式 ..................................99 3.2.2 声明、定义及链接规范 ..............................109 3.2.3 C/C++ 内存布局 ................................115 3.2.4 成员变量 ....................................119 3.2.5 对象的内存布局 .................................121 3.2.6 kilobyte 及 kibibyte ...............................129 3.3 捕捉及处理错误 ...................................129 3.3.1 错误类型 ....................................129 3.3.2 错误处理 ....................................130 3.3.3 实现错误检测及处理 ...............................132 3.4 流水线、缓存及优化 .................................136 3.4.1 并行范式转移 ..................................136 3.4.2 内存缓存 ....................................137 3.4.3 指令流水线及超纯量 CPU ............................142 第 4 章 游戏所需的三维数学 .............................146 4.1 在二维中解决三维问题 ...............................146 4.2 点和矢量 .......................................146 4.2.1 点和笛卡儿坐标 .................................147 4.2.2 左手坐标系与右手坐标系的比较 .........................148 4.2.3 矢量 ......................................149 4.2.4 矢量运算 ....................................150 4.2.5 点和矢量的线性插值 ...............................160 4.3 矩阵 .........................................160 4.3.1 矩阵乘法 ....................................161 4.3.2 以矩阵表示点和矢量 ...............................162 4.3.3 单位矩阵 ....................................163 4.3.4 逆矩阵 .....................................163 4.3.5 转置矩阵 ....................................163 4.3.6 齐次坐标 ....................................164 4.3.7 基础变换矩阵 ..................................165 4.3.8 4 × 3 矩阵 ...................................168 4.3.9 坐标空间 ....................................168 4.3.10 基的变更....................................171 4.3.11 变换法矢量...................................175 4.3.12 在内存中存储矩阵 ...............................175 4.4 四元数 ........................................177 4.4.1 把单位四元数视为三维旋转............................178 4.4.2 四元数运算 ...................................178 4.4.3 以四元数旋转矢量 ................................180 4.4.4 等价的四元数和矩阵 ...............................181 4.4.5 旋转性的线性插值 ................................183 4.5 比较各种旋转表达方式 ...............................185 4.5.1 欧拉角 .....................................185 4.5.2 3 × 3 矩阵 ...................................186 4.5.3 轴角 ......................................186 4.5.4 四元数 .....................................187 4.5.5 SQT 变换....................................187 4.5.6 对偶四元数 ...................................188 4.5.7 旋转和自由度 ..................................188 4.6 其他数学对象 ....................................189 4.6.1 直线、光线及线段 ................................189 4.6.2 球体 ......................................190 4.6.3 平面 ......................................190 4.6.4 轴对齐包围盒 ..................................192 4.6.5 定向包围盒 ...................................193 4.6.6 平截头体 ....................................193 4.6.7 凸多面体区域 ..................................194 4.7 硬件加速的 SIMD 运算 ...............................194 4.7.1 SSE 寄存器 ...................................195 4.7.2 __m128 数据类型 ................................196 4.7.3 用 SSE 内部函数编码 ..............................197 4.7.4 用 SSE 实现矢量与矩阵的相乘 ..........................199 4.8 产生随机数 .....................................203 4.8.1 线性同余产生器 .................................204 4.8.2 梅森旋转 ....................................204 4.8.3 所有伪随机数产生器之母及 Xorshift .......................205 第 II 部分 底层引擎系统 第 5 章 游戏支持系统 .................................209 5.1 子系统的启动和终止 ................................209 5.1.1 C++ 的静态初始化次序 (是不可用的) ......................209 5.1.2 行之有效的简单方法 ...............................212 5.1.3 一些实际引擎的例子 ...............................214 5.2 内存管理 .......................................218 5.2.1 优化动态内存分配 ................................218 5.2.2 内存碎片 ....................................227 5.3 容器 .........................................231 5.3.1 容器操作 ....................................232 5.3.2 迭代器 .....................................233 5.3.3 算法复杂度 ...................................234 5.3.4 建立自定义的容器类 ...............................236 5.4 字符串 ........................................248 5.4.1 字符串的使用问题 ................................248 5.4.2 字符串类 ....................................249 5.4.3 唯一标识符 ...................................249 5.4.4 本地化 .....................................253 5.5 引擎配置 .......................................263 5.5.1 读/写选项....................................263 5.5.2 个别用户选项 ..................................264 5.5.3 真实引擎中的配置管理..............................265 第 6 章 资源及文件系统 ................................270 6.1 文件系统 .......................................270 6.1.1 文件名和路径 ..................................271 6.1.2 基本文件 I/O ..................................274 6.1.3 异步文件 I/O ..................................277 6.2 资源管理器 .....................................281 6.2.1 离线资源管理及工具链..............................281 6.2.2 运行时资源管理 .................................289 第 7 章 游戏循环及实时模拟 .............................305 7.1 渲染循环 .......................................305 7.2 游戏循环 .......................................306 7.2.1 简单例子: 《乓》 .................................306 7.3 游戏循环的架构风格 ................................308 7.3.1 视窗消息泵 ...................................308 7.3.2 回调驱动框架 ..................................309 7.3.3 基于事件的更新 .................................311 7.4 抽象时间线 .....................................311 7.4.1 真实时间 ....................................311 7.4.2 游戏时间 ....................................311 7.4.3 局部及全局时间线 ................................312 7.5 测量及处理时间 ...................................313 7.5.1 帧率及时间增量 .................................313 7.5.2 从帧率到速率 ..................................314 7.5.3 使用高分辨率计时器测量实时时间 ........................317 7.5.4 时间单位和时钟变量 ...............................318 7.5.5 应对断点 ....................................321 7.5.6 一个简单的时钟类 ................................322 7.6 多处理器的游戏循环 ................................325 7.6.1 多处理器游戏机的架构..............................326 7.6.2 SIMD......................................331 7.6.3 分叉及汇合 ...................................331 7.6.4 每个子系统运行于独立线程............................333 7.6.5 作业模型 ....................................334 7.6.6 异步程序设计 ..................................334 7.7 网络多人游戏循环 ..................................337 7.7.1 主从式模型 ...................................337 7.7.2 点对点模型 ...................................339 7.7.3 案例分析: 《雷神之锤 II》.............................339 第 8 章 人体学接口设备 ................................342 8.1 各种人体学接口设备 ................................342 8.2 人体学接口设备的接口技术 .............................344 8.2.1 轮询 ......................................344 8.2.2 中断 ......................................344 8.2.3 无线设备 ....................................345 8.3 输入类型 .......................................345 8.3.1 数字式按钮 ...................................345 8.3.2 模拟式轴及按钮 .................................347 8.3.3 相对性轴 ....................................348 8.3.4 加速计 .....................................348 8.3.5 以 Wii 遥控器或 DualShock 做三维定向 .....................349 8.3.6 摄像机 .....................................350 8.4 输出类型 .......................................352 8.4.1 震动反馈 ....................................352 8.4.2 力反馈 .....................................353 8.4.3 音频 ......................................353 8.4.4 其他输入/输出 .................................353 8.5 游戏引擎的人体学接口设备系统 ..........................353 8.5.1 典型需求 ....................................354 8.5.2 死区 ......................................354 8.5.3 模拟信号过滤 ..................................355 8.5.4 输入事件检测 ..................................357 8.5.5 为多位玩家管理多个 HID ............................364 8.5.6 跨平台的 HID 系统 ...............................364 8.5.7 输入的重新映射 .................................366 8.5.8 上下文相关控制 .................................367 8.5.9 禁用输入 ....................................368 8.6 人体学接口设备使用实践 ..............................368 第 9 章 调试及开发工具 ................................370 9.1 日志及跟踪 .....................................370 9.1.1 使用 OutputDebugString() 做格式化输出.....................371 9.1.2 冗长级别 ....................................372 9.1.3 频道 ......................................373 9.1.4 把输出同时抄写至日志文件............................374 9.1.5 崩溃报告 ....................................374 9.2 调试用的绘图功能 ..................................375 9.2.1 调试绘图 API ..................................378 9.3 游戏内置菜单 ....................................382 9.4 游戏内置主控台 ...................................385 9.5 调试用摄像机和游戏暂停 ..............................386 9.6 作弊 .........................................386 9.7 屏幕截图及录像 ...................................387 9.8 游戏内置性能剖析 ..................................387 9.8.1 层阶式剖析 ...................................389 9.8.2 导出至 Excel ..................................394 9.9 游戏内置的内存统计和泄漏检测 ..........................394 第 III 部分 图形、运动与声音 第 10 章 渲染引擎 ...................................401 10.1 采用深度缓冲的三角形光栅化基础 ........................401 10.1.1 场景描述....................................403 10.1.2 描述表面的视觉性质 ..............................410 10.1.3 光照基础....................................423 10.1.4 虚拟摄像机...................................432 10.2 渲染管道 ......................................442 10.2.1 渲染管道概览 .................................443 10.2.2 工具阶段....................................444 10.2.3 资产调节阶段 .................................446 10.2.4 GPU 简史 ...................................447 10.2.5 GPU 管道 ...................................448 10.2.6 可编程着色器 .................................452 10.2.7 抗锯齿 ? ....................................456 10.2.8 应用程序阶段 .................................459 10.3 高级光照及全局光照 ................................468 10.3.1 基于图像的光照 ................................468 10.3.2 高动态范围光照 ................................472 10.3.3 全局光照....................................473 10.3.4 延迟渲染....................................479 10.3.5 基于物理着色 ? .................................480 10.4 视觉效果和覆盖层 .................................481 10.4.1 粒子效果....................................481 10.4.2 贴花 ......................................482 10.4.3 环境效果....................................483 10.4.4 覆盖层.....................................486 10.4.5 伽马校正....................................487 10.4.6 全屏后期处理效果 ...............................488 10.5 延伸阅读 ......................................489 第 11 章 动画系统 ...................................490 11.1 角色动画的类型 ..................................490 11.1.1 赛璐璐动画...................................490 11.1.2 刚性层阶式动画 ................................491 11.1.3 每顶点动画及变形目标 .............................492 11.1.4 蒙皮动画....................................493 11.1.5 把动画方法视为数据压缩技术 ..........................494 11.2 骨骼 .........................................495 11.2.1 骨骼层阶结构 .................................496 11.2.2 在内存中表示骨骼 ...............................497 11.3 姿势 .........................................498 11.3.1 绑定姿势....................................498 11.3.2 局部姿势....................................499 11.3.3 全局姿势....................................501 11.4 动画片段 ......................................502 11.4.1 局部时间线...................................503 11.4.2 全局时间线...................................506 11.4.3 比较局部和全局时钟 ..............................508 11.4.4 简单的动画数据格式 ..............................511 11.4.5 连续的通道函数 ................................512 11.4.6 元通道.....................................513 11.5 蒙皮及生成矩阵调色板 ...............................514 11.5.1 每顶点的蒙皮信息 ...............................515 11.5.2 蒙皮涉及的数学知识 ..............................515 11.6 动画混合 ......................................519 11.6.1 线性插值混合 .................................519 11.6.2 线性插值混合的应用 ..............................521 11.6.3 复杂的线性插值混合 ..............................526 11.6.4 骨骼分部混合 .................................529 11.6.5 加法混合....................................531 11.6.6 加法混合的应用 ................................533 11.7 后期处理 ......................................536 11.7.1 程序式动画...................................536 11.7.2 逆运动学....................................537 11.7.3 布娃娃.....................................538 11.8 压缩技术 ......................................538 11.8.1 通道省略....................................539 11.8.2 量化 ......................................539 11.8.3 采样频率及键省略 ...............................543 11.8.4 基于曲线的压缩 ................................543 11.8.5 选择性载入及串流 ...............................544 11.9 动画系统架构 ....................................544 11.10 动画管道 .....................................545 11.10.1 数据结构 ...................................546 11.10.2 扁平的加权平均混合表示法 ..........................549 11.10.3 混合树 ....................................552 11.10.4 淡入/淡出架构 ................................555 11.10.5 动画管道的优化 ................................557 11.11 动作状态机 ....................................559 11.11.1 动画状态 ...................................559 11.11.2 过渡 .....................................565 11.11.3 状态层 ....................................568 11.11.4 控制参数 ...................................570 11.11.5 约束 .....................................571 11.12 动画控制器 ....................................579 第 12 章 碰撞及刚体动力学 ..............................580 12.1 你想在游戏中加入物理吗 .............................580 12.1.1 物理系统可以做的事情 .............................581 12.1.2 物理好玩吗...................................582 12.1.3 物理对游戏的影响 ...............................583 12.2 碰撞 / 物理中间件 ..................................585 12.2.1 I-Collide、SWIFT、V-Collide 及 RAPID ....................585 12.2.2 ODE .....................................585 12.2.3 Bullet .....................................586 12.2.4 TrueAxis ...................................586 12.2.5 PhysX.....................................586 12.2.6 Havok .....................................587 12.2.7 PAL......................................587 12.2.8 DMM .....................................587 12.3 碰撞检测系统 ....................................588 12.3.1 可碰撞的实体 .................................588 12.3.2 碰撞/物理世界 .................................589 12.3.3 关于形状的概念 ................................590 12.3.4 碰撞原型....................................592 12.3.5 碰撞测试及解析几何 ..............................596 12.3.6 性能优化....................................604 12.3.7 碰撞查询....................................606 12.3.8 碰撞过滤....................................610 12.4 刚体动力学 .....................................611 12.4.1 基础 ......................................613 12.4.2 线性动力学...................................614 12.4.3 运动方程求解 .................................616 12.4.4 数值积分....................................618 12.4.5 二维旋转动力学 ................................622 12.4.6 三维旋转动力学 ................................625 12.4.7 碰撞响应....................................629 12.4.8 约束 ......................................636 12.4.9 控制刚体的运动 ................................640 12.4.10 碰撞/物理步 .................................641 12.5 将物理引擎整合至游戏 ...............................643 12.5.1 连接游戏对象和刚体 ..............................643 12.5.2 更新模拟....................................646 12.5.3 游戏中碰撞及物理的应用例子 ..........................649 12.6 展望 : 高级物理功能 ................................656 第 13 章 音频 ? ......................................658 13.1 声音的物理 .....................................658 13.1.1 声波的属性...................................659 13.1.2 感知响度及分贝 ................................660 13.1.3 声波的传播...................................663 13.1.4 位置的感知...................................668 13.2 声音中的数学知识 .................................668 13.2.1 信号 ......................................669 13.2.2 处理信号....................................670 13.2.3 线性时不变系统 ................................671 13.2.4 LTI 系统的脉冲响应 ..............................672 13.2.5 频域与傅里叶变换 ...............................677 13.3 声音技术 ......................................685 13.3.1 模拟音频技术 .................................685 13.3.2 数字音频技术 .................................690 13.4 三维音频渲染 ....................................696 13.4.1 三维声音渲染概览 ...............................697 13.4.2 为音频世界建模 ................................698 13.4.3 基于距离的衰减 ................................698 13.4.4 偏移 ......................................700 13.4.5 传播、混响及声学................................705 13.4.6 多普勒频移...................................712 13.5 音频引擎架构 ....................................712 13.5.1 音频处理管道 .................................714 13.5.2 概念及术语...................................714 13.5.3 音总线.....................................715 13.5.4 主控混音器...................................718 13.5.5 主控输出总线 .................................719 13.5.6 实现总线....................................720 13.5.7 资产管理....................................722 13.5.8 对游戏混音...................................724 13.5.9 音频引擎调查 .................................727 13.6 游戏专用的音频功能 ................................730 13.6.1 支持切割屏...................................731 13.6.2 角色对话....................................732 13.6.3 音乐 ......................................744 第 IV 部分 游 戏 性 第 14 章 游戏性系统简介 ...............................747 14.1 剖析游戏世界 ....................................748 14.1.1 世界元素....................................748 14.1.2 世界组块....................................750 14.1.3 高级游戏流程 .................................751 14.2 实现动态元素 : 游戏对象 ..............................752 14.2.1 游戏对象模型 .................................753 14.2.2 工具方的设计和运行时的设计 ..........................754 14.3 数据驱动游戏引擎 .................................754 14.4 游戏世界编辑器 ..................................755 14.4.1 游戏世界编辑器的典型功能 ...........................758 14.4.2 集成的资产管理工具 ..............................763 第 15 章 运行时游戏性基础系统 ...........................766 15.1 游戏性基础系统的组件 ...............................766 15.2 各种运行时对象模型架构 .............................768 15.2.1 以对象为中心的各种架构 ............................769 15.2.2 以属性为中心的各种架构 ............................781 15.3 世界组块的数据格式 ................................785 15.3.1 二进制对象映像 ................................786 15.3.2 序列化游戏对象描述 ..............................786 15.3.3 生成器及类型架构 ...............................788 15.4 游戏世界的加载和串流 ...............................792 15.4.1 简单的关卡加载 ................................792 15.4.2 向无缝加载进发: 阻隔室 ............................792 15.4.3 游戏世界的串流 ................................794 15.4.4 对象生成的内存管理 ..............................796 15.4.5 游戏存档....................................798 15.5 对象引用与世界查询 ................................799 15.5.1 指针 ......................................799 15.5.2 智能指针....................................800 15.5.3 句柄 ......................................802 15.5.4 游戏对象查询 .................................804 15.6 实时更新游戏对象 .................................806 15.6.1 一个简单 (但不可行) 的方式...........................807 15.6.2 性能限制及批次式更新 .............................809 15.6.3 对象及子系统的相互依赖 ............................811 15.6.4 为并行设计...................................819 15.7 事件与消息泵 ....................................821 15.7.1 静态类型的函数绑定带来的问题 .........................821 15.7.2 把事件封装成对象 ...............................822 15.7.3 事件类型....................................823 15.7.4 事件参数....................................824 15.7.5 事件处理器...................................826 15.7.6 取出事件参数 .................................827 15.7.7 职责链.....................................827 15.7.8 登记对事件的关注 ...............................829 15.7.9 要排队还是不要排队 ..............................830 15.7.10 即时传递事件带来的问题............................835 15.7.11 数据驱动事件/消息传递系统 ..........................836 15.8 脚本 .........................................839 15.8.1 运行时与数据定义的对比 ............................839 15.8.2 编程语言特性 .................................839 15.8.3 一些常见的游戏脚本语言 ............................841 15.8.4 脚本所需的架构 ................................846 15.8.5 运行时游戏脚本语言的功能 ...........................847 15.9 高层次的游戏流程 .................................858 第 V 部分 总 结 第 16 章 还有更多内容吗 ...............................863 16.1 一些未谈及的引擎系统 ...............................863 16.1.1 影片播放器...................................863 16.1.2 多人网络....................................864 16.2 游戏性系统 .....................................864 16.2.1 玩家机制....................................864 16.2.2 摄像机.....................................864 16.2.3 人工智能....................................865 16.2.4 其他游戏性系统 ................................866 参考文献 ..........................................867 中文索引 ..........................................871 英文索引 ..........................................900
展开全部

游戏引擎架构(第2版) 作者简介

[美]杰森·格雷戈瑞(Jason Gregory),在1994年开始任职专业软件工程师,自1999年3月开始在游戏产业中任职软件工程师。在圣迭哥Midway Home Entertainment公司开始游戏编程的他,为《疯狂飞行员(Freaky Flyers)》及《Crank the Weasel》开发PlayStation 2/Xbox上的动画系统。在2003年,他转到洛杉矶艺电,为《荣誉勋章:血战太平洋(Medal of Honor: Pacific Assault)》开发游戏引擎及游戏性技术,并在《荣誉勋章:空降神兵(Medal of Honor: Airborne)》中担任首席工程师。他现时是顽皮狗公司的通才程序员,为《神秘海域:德雷克船长的宝藏(Uncharted: Drake's Fortune)》及《神秘海域:纵横四海(Uncharted: Among Thieves)》开发引擎及游戏性软件。他也在南加州大学教授游戏技术的课程。叶劲峰(Milo Yip),从小自习编程,并爱好计算机图形学。上中学时兼职开发策略RPG《王子传奇》,该游戏在1995年于台湾发行。其后他获取了香港大学认知科学学士、香港中文大学系统工程及工程管理哲学硕士。毕业后在香港理工大学设计学院从事游戏引擎及相关技术的研发,职至项目主任。除发表学术文章外,也曾合著《DirectX9游戏编程实务》。2008年往上海育碧担任引擎工程师开发《美食从天而降(Cloudy with a Chance of Meatballs)》Xbox360/PS3/Wii/PC,2009年起于麻辣马开发《爱丽丝:疯狂回归(Alice: Madness Returns)》Xbox360/PS3/PC,2011年加入腾讯互动娱乐引擎技术中心担任专家工程师,所研发的技术已用于《斗战神》、《天涯明月刀》、《众神争霸》等项目中。

商品评论(0条)
暂无评论……
书友推荐
编辑推荐
返回顶部
中图网
在线客服