- 网页设计
- 整站网页设计
- 网站模板设计
- 网站开发
- 综合门户网开发
- 企业网站开发
- 电子商务网站开发
- 资讯网站开发
- 团购网站开发
- 手机网站开发
- 宣传展示网站
- 网站功能开发
- 网站特效制作
- 应用软件开发
- 手机应用软件
- 计算机应用软件
- 软件美工
- 程序修改
- 仿网站开发
- 脚本插件
- 软件测试
- 网站改版
- 企业办公系统
- 软件汉化
- 软件界面皮肤
- 企业办公系统界面
- 应用移植
- Android开发
- IOS开发
- 应用汉化
- 安卓系统定制
- 网店装修
官方正版 游戏引擎架构第2版第二版 叶劲峰 游戏引擎软件开发理论及实践探讨 游戏引擎软件开发技巧实际应用 游戏编程设计教程书籍
- 产品名称:游戏引擎架构(第2版)
- 书名:游戏引擎架构(第2版)
- 作者:(美)JasonGregory(杰森·格雷戈瑞)
- 译者:叶劲峰
- 定价:219.00元
- 书名:游戏引擎架构(第2版)
- 开本:16开
- 是否是套装:否
- 出版社名称:电子工业出版社
《游戏引擎架构》(第 2 版)涵盖游戏引擎软件开发的理论及实践知识,并在第 1 版的基础上对多个主题进行了更新。本书中讨论的概念及技巧被实际应用于现实中的游戏工作室(如艺电及顽皮狗)。虽然书中采用的例子通常依托于一些专门的技术,但是讨论范围远超某个引擎或API。另外,书中提供的参考文献及引用也非常有价值,可让读者继续深入游戏开发的任何特定方向。本书为大学程度的游戏编程课程而编写,但也适合软件工程师、游戏开发业余爱好者,以及游戏产业的从业人员阅读。通过阅读本书,资历较浅的游戏工程师可以巩固他们所学的游戏技术及引擎架构的知识,专注某一领域的程序员也能从本书全面的介绍中获益。《游戏引擎架构》(第2版)不仅可作为知识扫盲的工具,以及延伸学习的跳板,更能让读者扎实地理解游戏引擎中每个工程范畴中的理论与典型实践。本书将助你走过游戏引擎架构那迷人、全方位的难忘之旅。本书讲解商业游戏引擎中各个子系统的理论基础,并论述了实现这些子系统通常所需的数据结构、算法及软件接口。本书聚焦在引擎本身,其中包括底层基础系统、渲染引擎、碰撞系统、物理模拟、角色动画及音频。而在“游戏性基础层”中深入探讨游戏对象模型、世界编辑器、事件系统与脚本系统。书中还涉及一些游戏编程方面的技术,如玩家机制、摄像头和人工智能。《游戏引擎架构》广受欢迎,成为游戏引擎软件开发理论和实践的完整指南。第2版按当今游戏引擎架构发展趋势更新大量内容,进一步完善对典型游戏引擎各主要模块的讲解,重点新内容包括:·更新了各个主题的信息,包括C++编程语言的*新版本C++11、第8代游戏机Xbox One 和PlayStation 4。·新增了音频技术章节,包含AAA游戏音频引擎所涉及的物理、数学和技术等方面的知识。·更新了多核编程、流水线CPU架构、优化、国际化、赝矢量、格拉斯曼代数、对偶四数、SIMD矢量数学、内存对齐及抗锯齿等章节。
第 2 版序言 xxxiii
第 1 版序言 xxxv
第 2 版前言 xxxvii
第 1 版前言 xxxviii
致谢 xl
第 I 部分 基 础
第 1 章 导论 3
11 典型游戏团队的结构 4
111 工程师 5
112 艺术家 5
113 游戏设计师 6
114 制作人 7
115 其他工作人员 7
116 发行商及工作室 7
12 游戏是什么 8
121 电子游戏作为软实时模拟8
13 游戏引擎是什么 10
14 不同游戏类型的引擎差异 11
141 **人称射击游戏 12
142 平台及其他第三人称游戏13
143 格斗游戏 15
144 竞速游戏 17
145 实时策略游戏 18
146 大型多人在线游戏 20
147 玩家创作内容 @ 21
148 其他游戏类型 23
15 游戏引擎概览 24
151 雷神之锤引擎家族 24
152 虚幻引擎 25
153 Source 引擎 26
154 DICE 的寒霜引擎 @ 26
155 CryEngine @ 26
156 索尼的 PhyreEngine @ 27
157 微软的 XNA Game Studio27
158 Unity @ 27
159 供非程序员使用的二维游戏引擎 @ 28
(咨询特价) 其他商业引擎 29
(咨询特价) 专有内部引擎 29
(咨询特价) 开源引擎29
16 运行时引擎架构 30
161 目标硬件 32
162 设备驱动程序 32
163 操作系统 32
164 第三方软件开发包和中间件33
165 平立层 36
166 核心系统 36
167 资源管理器 37
168 渲染引擎 37
169 剖析和调试工具 41
(咨询特价) 碰撞和物理42
(咨询特价) 动画 43
(咨询特价) 人体学接口设备 44
(咨询特价) 音频 45
(咨询特价) 在线多人/网络游戏 46
(咨询特价) 游戏性基础系统 47
(咨询特价) 个别游戏专用子系统 50
17 工具及资产管道 50
171 数字内容创作工具 50
172 资产调节管道 52
173 世界编辑器 54
174 资源数据库 @ 55
175 一些构建工具的方法 55
第 2 章 专业工具 58
21 版本控制 58
211 为何使用版本控制 58
212 常见的版本控制系统 59
213 Subversion 和 TortoiseSVN 概览 60
214 在 Google 上设置代码版本库61
215 安装 TortoiseSVN 61
216 文件版本、更新和提交 63
217 多人签出、分支及合并 64
218 删除 66
22 微软 Visual Studio66
221 源文件、头文件及翻译单 67
222 程序库、可执行文件及动态链接库67
223 项目及解决方案 68
224 生成配置 69
225 调试代码 75
23 剖析工具 81
231 剖析器列表 83
24 内存泄漏和损坏检测 83
25 其他工具 84
第 3 章 游戏软件工程基础 85
31 重温 C++ 及*佳实践 85
311 扼要重温面向对象编程85
312 编码标准: 为什么及需要多少 91
313 C++11 @ 92
32 C/C++ 的数据、代码及内存 99
321 数值表达形式 99
322 声明、定义及链接规范 109
323 C/C++ 内存布局 115
324 成员变量 119
325 对象的内存布局 121
326 kilobyte 及 kibibyte 129
33 捕捉及处理错误 129
331 错误类型 129
332 错误处理 130
333 实现错误检测及处理 132
34 流水线、缓存及优化 136
341 并行范式转移 136
342 内存缓存 137
343 指令流水线及超纯量 CPU 142
第 4 章 游戏所需的三维数学 146
41 在二维中解决三维问题 146
42 点和矢量 146
421 点和笛卡儿坐标 147
422 左手坐标系与右手坐标系的比较 148
423 矢量 149
424 矢量运算 150
425 点和矢量的线性插值 160
43 矩阵 160
431 矩阵乘法 161
432 以矩阵表示点和矢量 162
433 单位矩阵 163
434 逆矩阵 163
435 转置矩阵 163
436 齐次坐标 164
437 基础变换矩阵 165
438 4 × 3 矩阵 168
439 坐标空间 168
(咨询特价) 基的变更171
(咨询特价) 变换法矢量175
(咨询特价) 在内存中存储矩阵 175
44 四数 177
441 把单位四数视为三维旋转178
442 四数运算 178
443 以四数旋转矢量 180
444 等价的四数和矩阵 181
445 旋转性的线性插值 183
45 比较各种旋转表达方式 185
451 欧拉角 185
452 3 × 3 矩阵 186
453 轴角 186
454 四数 187
455 SQT 变换187
456 对偶四数 188
457 旋转和自由度 188
46 其他数学对象 189
461 直线、光线及线段 189
462 球体 190
463 平面 190
464 轴对齐包围盒 192
465 定向包围盒 193
466 平截头体 193
467 凸多面体区域 194
47 硬件加速的 SIMD 运算 194
471 SSE 寄存器 195
472 __m128 数据类型 196
473 用 SSE 内部函数编码 197
474 用 SSE 实现矢量与矩阵的相乘 199
48 产生随机数 203
481 线性同余产生器 204
482 梅森旋转 204
483 所有伪随机数产生器之母及 Xorshift 205
第 II 部分 底层引擎系统
第 5 章 游戏支持系统 209
51 子系统的启动和终止 209
511 C++ 的静态初始化次序 (是不可用的) 209
512 行之有效的简单方法 212
513 一些实际引擎的例子 214
52 内存管理 218
521 优化动态内存分配 218
522 内存碎片 227
53 容器 231
531 容器操作 232
532 迭代器 233
533 算法复杂度 234
534 建立自定义的容器类 236
54 字符串 248
541 字符串的使用问题 248
542 字符串类 249
543 **标识符 249
544 本地化 253
55 引擎配置 263
551 读/写选项263
552 个别用户选项 264
553 真实引擎中的配置管理265
第 6 章 资源及文件系统 270
61 文件系统 270
611 文件名和路径 271
612 基本文件 I/O 274
613 异步文件 I/O 277
62 资源管理器 281
621 离线资源管理及工具链281
622 运行时资源管理 289
第 7 章 游戏循环及实时模拟 305
71 渲染循环 305
72 游戏循环 306
721 简单例子: 《乓》 306
73 游戏循环的架构风格 308
731 视窗消息泵 308
732 回调驱动框架 309
33 基于事件的更新 311
74 抽象时间线 311
741 真实时间 311
742 游戏时间 311
743 局部及全局时间线 312
75 测量及处理时间 313
751 帧率及时间增量 313
752 从帧率到速率 314
753 使用高分辨率计时器测量实时时间 317
754 时间单位和时钟变量 318
755 应对断点 321
756 一个简单的时钟类 322
76 多处理器的游戏循环 325
761 多处理器游戏机的架构326
762 SIMD331
763 分叉及汇合 331
764 每个子系统运行于独立线程333
765 作业模型 334
766 异步程序设计 334
77 网络多人游戏循环 337
771 主从式模型 337
772 点对点模型 339
773 案例分析: 《雷神之锤 II》339
第 8 章 人体学接口设备 342
81 各种人体学接口设备 342
82 人体学接口设备的接口技术 344
821 轮询 344
822 中断 344
823 无线设备 345
83 输入类型 345
831 数字式按钮 345
832 模拟式轴及按钮 347
833 相对性轴 348
834 加速计 348
835 以 Wii 遥控器或 DualShock 做三维定向 349
836 摄像机 350
84 输出类型 352
841 震动反馈 352
842 力反馈 353
843 音频 353
844 其他输入/输出 353
85 游戏引擎的人体学接口设备系统 353
851 典型需求 354
852 死区 354
853 模拟信号过滤 355
854 输入事件检测 357
855 为多位玩家管理多个 HID 364
856 跨平台的 HID 系统 364
857 输入的重新映射 366
858 上下文相关控制 367
859 禁用输入 368
86 人体学接口设备使用实践 368
第 9 章 调试及开发工具 370
91 日志及跟踪 370
911 使用 OutputDebugString() 做格式化输出371
912 冗长级别 372
913 频道 373
914 把输出同时抄写至日志文件374
915 崩溃报告 374
92 调试用的绘图功能 375
921 调试绘图 API 378
93 游戏内置菜单 382
94 游戏内置主控台 385
95 调试用摄像机和游戏暂停 386
96 作弊 386
97 屏幕截图及录像 387
98 游戏内置性能剖析 387
981 层阶式剖析 389
982 导出至 Excel 394
99 游戏内置的内存统计和泄漏检测 394
第 III 部分 图形、运动与声音
第 10 章 渲染引擎 401
101 采用深度缓冲的三角形光栅化基础 401
(咨询特价) 场景描述403
(咨询特价) 描述表面的视觉性质 410
(咨询特价) 光照基础423
(咨询特价) 虚拟摄像机432
102 渲染管道 442
(咨询特价) 渲染管道概览 443
(咨询特价) 工具阶段444
(咨询特价) 资产调节阶段 446
(咨询特价) GPU 简史 447
(咨询特价) GPU 管道 448
(咨询特价) 可编程着色器 452
(咨询特价) 抗锯齿 @ 456
(咨询特价) 应用程序阶段 459
103 高级光照及全局光照 468
(咨询特价) 基于图像的光照 468
(咨询特价) 高动态范围光照 472
(咨询特价) 全局光照473
(咨询特价) 延迟渲染479
(咨询特价) 基于物理着色 @ 480
104 视觉效果和覆盖层 481
(咨询特价) 粒子效果481
(咨询特价) 贴花 482
(咨询特价) 环境效果483
(咨询特价) 覆盖层486
(咨询特价) 伽马校正487
(咨询特价) 全屏后期处理效果 488
105 延伸阅读 489
第 11 章 动画系统 490
111 角色动画的类型 490
(咨询特价) 赛璐璐动画490
(咨询特价) 刚性层阶式动画 491
(咨询特价) 每顶点动画及变形目标 492
(咨询特价) 蒙皮动画493
(咨询特价) 把动画方法视为数据压缩技术 494
112 骨骼 495
(咨询特价) 骨骼层阶结构 496
(咨询特价) 在内存中表示骨骼 497
113 姿势 498
(咨询特价) 绑定姿势498
(咨询特价) 局部姿势499
(咨询特价) 全局姿势501
114 动画片段 502
(咨询特价) 局部时间线503
(咨询特价) 全局时间线506
(咨询特价) 比较局部和全局时钟 508
(咨询特价) 简单的动画数据格式 511
(咨询特价) 连续的通道函数 512
(咨询特价) 通道513
115 蒙皮及生成矩阵调色板 514
(咨询特价) 每顶点的蒙皮信息 515
(咨询特价) 蒙皮涉及的数学知识 515
116 动画混合 519
(咨询特价) 线性插值混合 519
(咨询特价) 线性插值混合的应用 521
(咨询特价) 复杂的线性插值混合 526
(咨询特价) 骨骼分部混合 529
(咨询特价) 加法混合531
(咨询特价) 加法混合的应用 533
117 后期处理 536
(咨询特价) 程序式动画536
(咨询特价) 逆运动学537
(咨询特价) 布娃娃538
118 压缩技术 538
(咨询特价) 通道省略539
(咨询特价) 量化 539
(咨询特价) 采样频率及键省略 543
(咨询特价) 基于曲线的压缩 543
(咨询特价) 选择性载入及串流 544
119 动画系统架构 544
(咨询特价) 动画管道 545
(咨询特价) 数据结构 546
(咨询特价) 扁平的加权平均混合表示法 549
(咨询特价) 混合树 552
(咨询特价) 淡入/淡出架构 555
(咨询特价) 动画管道的优化 557
(咨询特价) 动作状态机 559
(咨询特价) 动画状态 559
(咨询特价) 过渡 565
(咨询特价) 状态层 568
(咨询特价) 控制参数 570
(咨询特价) 约束 571
(咨询特价) 动画控制器 579
第 12 章 碰撞及刚体动力学 580
121 你想在游戏中加入物理吗 580
(咨询特价) 物理系统可以做的事情 581
(咨询特价) 物理好玩吗582
(咨询特价) 物理对游戏的影响 583
122 碰撞 / 物理中间件 585
(咨询特价) I-Collide、SWIFT、V-Collide 及 RAPID 585
(咨询特价) ODE 585
(咨询特价) Bullet 586
(咨询特价) TrueAxis 586
(咨询特价) PhysX586
(咨询特价) Havok 587
(咨询特价) PAL587
(咨询特价) DMM 587
123 碰撞检测系统 588
(咨询特价) 可碰撞的实体 588
(咨询特价) 碰撞/物理世界 589
(咨询特价) 关于形状的概念 590
(咨询特价) 碰撞原型592
(咨询特价) 碰撞测试及解析几何 596
(咨询特价) 性能优化604
(咨询特价) 碰撞查询606
(咨询特价) 碰撞过滤610
124 刚体动力学 611
(咨询特价) 基础 613
(咨询特价) 线性动力学614
(咨询特价) 运动方程求解 616
(咨询特价) 数值积分618
(咨询特价) 二维旋转动力学 622
(咨询特价) 三维旋转动力学 625
(咨询特价) 碰撞响应629
(咨询特价) 约束 636
(咨询特价) 控制刚体的运动 640
(咨询特价) 碰撞/物理步 641
125 将物理引擎整合至游戏 643
(咨询特价) 连接游戏对象和刚体 643
(咨询特价) 更新模拟646
(咨询特价) 游戏中碰撞及物理的应用例子 649
126 展望 : 高级物理功能 656
第 13 章 音频 @ 658
131 声音的物理 658
(咨询特价) 声波的属性659
(咨询特价) 感知响度及分贝 660
(咨询特价) 声波的传播663
(咨询特价) 位置的感知668
132 声音中的数学知识 668
(咨询特价) 信号 669
(咨询特价) 处理信号670
(咨询特价) 线性时不变系统 671
(咨询特价) LTI 系统的脉冲响应 672
(咨询特价) 频域与傅里叶变换 677
133 声音技术 685
(咨询特价) 模拟音频技术 685
(咨询特价) 数字音频技术 690
134 三维音频渲染 696
(咨询特价) 三维声音渲染概览 697
(咨询特价) 为音频世界建模 698
(咨询特价) 基于距离的衰减 698
(咨询特价) 偏移 700
(咨询特价) 传播、混响及声学705
(咨询特价) 多普勒频移712
135 音频引擎架构 712
(咨询特价) 音频处理管道 714
(咨询特价) 概念及术语714
(咨询特价) 音总线715
(咨询特价) 主控混音器718
(咨询特价) 主控输出总线 719
(咨询特价) 实现总线720
(咨询特价) 资产管理722
(咨询特价) 对游戏混音724
(咨询特价) 音频引擎调查 727
136 游戏专用的音频功能 730
(咨询特价) 支持切割屏731
(咨询特价) 角色对话732
(咨询特价) 音乐 744
第 IV 部分 游 戏 性
第 14 章 游戏性系统简介 747
141 剖析游戏世界 748
(咨询特价) 世界素748
(咨询特价) 世界组块750
(咨询特价) 高级游戏流程 751
142 实现动态素 : 游戏对象 752
(咨询特价) 游戏对象模型 753
(咨询特价) 工具方的设计和运行时的设计 754
143 数据驱动游戏引擎 754
144 游戏世界编辑器 755
(咨询特价) 游戏世界编辑器的典型功能 758
(咨询特价) 集成的资产管理工具 763
第 15 章 运行时游戏性基础系统 766
151 游戏性基础系统的组件 766
152 各种运行时对象模型架构 768
(咨询特价) 以对象为中心的各种架构 769
(咨询特价) 以属性为中心的各种架构 781
153 世界组块的数据格式 785
(咨询特价) 二进制对象映像 786
(咨询特价) 序列化游戏对象描述 786
(咨询特价) 生成器及类型架构 788
154 游戏世界的加载和串流 792
(咨询特价) 简单的关卡加载 792
(咨询特价) 向无缝加载进发: 阻隔室 792
(咨询特价) 游戏世界的串流 794
(咨询特价) 对象生成的内存管理 796
(咨询特价) 游戏存档798
155 对象引用与世界查询 799
(咨询特价) 指针 799
(咨询特价) 智能指针800
(咨询特价) 句柄 802
(咨询特价) 游戏对象查询 804
156 实时更新游戏对象 806
(咨询特价) 一个简单 (但不可行) 的方式807
(咨询特价) 性能限制及批次式更新 809
(咨询特价) 对象及子系统的相互依赖 811
(咨询特价) 为并行设计819
157 事件与消息泵 821
(咨询特价) 静态类型的函数绑定带来的问题 821
(咨询特价) 把事件封装成对象 822
(咨询特价) 事件类型823
(咨询特价) 事件参数824
15 事件处理器826
(咨询特价) 取出事件参数 827
(咨询特价) 职责链827
(咨询特价) 登记对事件的关注 829
(咨询特价) 要排队还是不要排队 830
(咨询特价) 即时传递事件带来的问题835
(咨询特价) 数据驱动事件/消息传递系统 836
158 脚本 839
(咨询特价) 运行时与数据定义的对比 839
(咨询特价) 编程语言特性 839
(咨询特价) 一些常见的游戏脚本语言 841
(咨询特价) 脚本所需的架构 846
(咨询特价) 运行时游戏脚本语言的功能 847
159 高层次的游戏流程 858
第 V 部分 总 结
第 16 章 还有更多内容吗 863
161 一些未谈及的引擎系统 863
(咨询特价) 影片播放器863
(咨询特价) 多人网络864
162 游戏性系统 864
(咨询特价) 玩家机制864
(咨询特价) 摄像机864
(咨询特价) 人工智能865
(咨询特价) 其他游戏性系统 866
参考文献 867
中文索引 871
英文索引 900
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年加入腾讯互动引擎技术中心担任专家工程师,所研发的技术已用于《斗战神》、《天涯明月刀》、《众神争霸》等项目中。
本书为大学程度的游戏编程课程而编写,但也适合软件工程师、游戏开发业余爱好者,以及游戏产业的从业人员阅读。通过阅读本书,资历较浅的游戏工程师可以巩固他们所学的游戏技术及引擎架构的知识,专注某一领域的程序员也能从本书更为全面的介绍中获益。 _310x310.jpg
-
最近销售:已售出50 掌柜:风云定¥75 元
-
最近销售:已售出29 掌柜:风云定¥59 元
-
最近销售:已售出16 掌柜:风云定¥69 元
-
最近销售:已售出14 掌柜:风云定¥69 元
-
最近销售:已售出14 掌柜:风云定¥68 元