当前位置:首页 > 工业技术
计算机游戏程序设计  第2版
计算机游戏程序设计  第2版

计算机游戏程序设计 第2版PDF电子书下载

工业技术

  • 电子书积分:12 积分如何计算积分?
  • 作 者:耿卫东,陈为编著
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2009
  • ISBN:9787121078019
  • 页数:326 页
图书介绍:本书为普通高等教育“十一五”国家级规划教材。本书着重介绍了计算机游戏程序设计所需的专业领域知识,包括二维图形图像技术、三维图形学基础、高级图形学编程、计算机动画技术、人工智能技术、音频处理技术和网络技术等,基本涵盖了计算机游戏编程的各个主要方面。全书共分11章,取材于国内外的最新资料,强调理论与实践相结合,通过游戏实例来启发性地说明游戏编程的各种原理和方法。本书附光盘一张,内容包括:实例源文件、完整演示实例以及配套的电子课件,这些资料均基于作者封装的开源代码的引擎。本书所面向的读者对象是那些已掌握基本的程序设计技能,但立志于从事计算机游戏软件开发的程序员和游戏开发爱好者。既可作为计算机、数字媒体技术和游戏专业的本科生(研究生)的教材,也可用于游戏学院和各类游戏编程人员培训班的参考资料,对正在从事游戏开发和制作的相关人员也具有重要参考价值。
《计算机游戏程序设计 第2版》目录

第1章 计算机游戏简介 1

1.1 什么是游戏 1

1.2 计算机游戏的发展简史 4

1.3 计算机游戏的分类 6

1.4 计算机游戏的开发过程 10

1.5 中国游戏业的展望 12

习题1 13

参考文献 13

第2章 游戏程序设计概览 14

2.1 游戏的基本流程和体系结构 14

2.2 游戏开发的基本理念及方法 17

2.3 游戏引擎简介 18

2.4 游戏的调试与测试 20

2.5 游戏开发的准则和“忠告” 22

2.6 游戏编程人员的基本素质要求 24

2.7 小结 25

习题2 25

参考文献 26

第3章 二维游戏的基本编程技术 27

3.1 二维游戏的基本流程和架构 27

3.2 图像文件的解析 27

3.3 地图的创建与显示 30

3.3.1 固定地图 30

3.3.2 滚屏地图 31

3.3.3 多层次地图 32

3.3.4 菱形地图 32

3.4 颜色的混合与半透明效果 34

3.4.1 基本原理和步骤 34

3.4.2 Alpha融合技术 36

3.5 精灵动画 37

3.6 二维游戏世界的模拟 40

3.6.1 碰撞检测 40

3.6.2 物体遮挡关系 42

3.6.3 物体运动模拟 42

3.7 一个简单的二维潜艇游戏循环实例 43

3.8 小结 45

习题3 45

参考文献 45

第4章 三维图形学基础 46

4.1 向量、矩阵及四元数运算 46

4.1.1 向量运算 46

4.1.2 矩阵运算 47

4.1.3 四元数及其运算 51

4.2 常用的立体几何算法 53

4.2.1 常用几何体的表达与生成 53

4.2.2 常用几何体之间的距离与求交 54

4.2.3 常用几何体的属性计算 55

4.3 三维场景的表达模型 57

4.3.1 三角网格模型 59

4.3.2 三类常用参数曲面 60

4.4 真实感图形生成 64

4.4.1 坐标系 64

4.4.2 图形绘制流程 65

4.4.3 颜色理论 71

4.4.4 光照明计算 74

4.5 游戏画面的刷新与反走样 80

4.5.1 画面刷新和计时函数 80

4.5.2 反走样处理 81

4.6 小结 81

习题4 82

参考文献 82

第5章 三维游戏场景的组织和绘制 83

5.1 三维场景的组织与管理 83

5.1.1 基于场景图的表达和管理 84

5.1.2 基于绘制状态的场景管理 88

5.1.3 基于景物包围体的场景组织 89

5.1.4 优化场景绘制的几何剖分技术 91

5.1.5 景物包围体与场景剖分技术比较 96

5.2 游戏场景的几何优化 96

5.2.1 层次细节(LOD)技术 97

5.2.2 渐进网格和连续多分辨率绘制技术 99

5.3 三维场景的快速可见性判断与消隐 99

5.3.1 可见性判断算法分类 100

5.3.2 基于入口技术的可见性判断 101

5.3.3 遮挡面剔除技术 103

5.3.4 潜在可见集(PVS)方法 105

5.4 地形场景的绘制与漫游 106

5.5 三维游戏场景中的碰撞检测 108

5.5.1 碰撞检测的基本原理 109

5.5.2 基于空间剖分结构的碰撞检测算法 109

5.5.3 层次包围体树法 110

5.5.4 基于图像空间的碰撞检测算法 112

5.6 小结 112

习题5 112

参考文献 113

第6章 游戏中的高级图形技术 114

6.1 纹理映射 114

6.1.1 纹理映射的基本原理 115

6.1.2 凹凸纹理映射 120

6.1.3 位移映射 124

6.1.4 环境纹理映射 126

6.1.5 基于光照映射的快速绘制 128

6.1.6 高级纹理映射技术总结 130

6.2 混合式图像和几何绘制 131

6.2.1 光晕 132

6.2.2 精灵图元的绘制 133

6.2.3 Billboard技术 133

6.2.4 Impostor技术 136

6.3 过程式建模技术 137

6.3.1 粒子系统 138

6.3.2 L系统与植被的模拟 140

6.3.3 爆炸与火焰 142

6.3.4 云的过程式纹理生成 143

6.4 场景光影特效模拟 143

6.4.1 阴影 143

6.4.2 雾 151

6.4.3 运动模糊和域深 153

6.5 小结 154

习题6 154

参考文献 154

第7章 三维动画的基本编程技术 156

7.1 三维动画技术概述 156

7.2 关键帧动画技术 158

7.2.1 关键帧的指定 158

7.2.2 中间帧的插值技术 160

7.3 基于动作捕捉的动画技术 166

7.3.1 动作捕捉系统简介 167

7.3.2 动作捕捉数据的文件格式及其解析 169

7.3.3 动作捕捉数据的编辑与重用 182

7.4 脚本驱动的动画技术 184

7.5 小结 187

习题7 188

参考文献 188

第8章 游戏中的音频编程 189

8.1 声音基础 189

8.1.1 声音的生成 189

8.1.2 声间的编码存储 190

8.1.3 声音的合成 191

8.2 DirectX Audio编程 192

8.2.1 DirectX Audio概念 192

8.2.2 DirectSound的工作原理 192

8.2.3 DirectSound编程初步 195

8.2.4 DirectMusic播放MIDI背景音乐 201

8.3 三维音效生成 204

8.3.1 听觉理论 204

8.3.2 环境模拟 204

8.3.3 DirectSound的三维音效编程 206

8.4 常见的声音引擎简介 210

8.5 小结 211

习题8 211

参考文献 212

第9章 游戏中的人机界面技术 213

9.1 游戏的可玩性与人机界面 214

9.2 用户界面设计基础 215

9.2.1 用户界面的色彩设计 215

9.2.2 用户界面的形式 217

9.2.3 游戏软件的界面设计 221

9.2.4 用户界面开发设计原则 221

9.2.5 用户界面的软件开发过程 222

9.3 DirectInput编程 223

9.3.1 Windows系统下的键盘操作 223

9.3.2 DirectInput键盘编程 224

9.3.3 DirectInput鼠标编程 227

9.3.4 DirectInput游戏操纵杆编程 228

9.4 Wii手柄的运动传感数据获取编程 230

9.4.1 Wiimote编程接口API说明 230

9.4.2 基于Wiimote获取运动传感数据的示例代码 232

9.5 小结 233

习题9 234

参考文献 234

第10章 游戏中的人工智能 235

10.1 游戏AI简介 235

10.2 常见的游戏AI技术 237

10.2.1 有限状态机 237

10.2.2 脚本语言 239

10.2.3 模糊逻辑 240

10.2.4 多智能体技术与人工生命 240

10.2.5 决策树 241

10.2.6 人工神经元网络 242

10.2.7 遗传算法 243

10.2.8 群体行为的模拟 245

10.2.9 常见游戏AI的技术特点分析与比较 246

10.3 跟踪与追逐行为的模拟 246

10.4 有限状态机和模糊有限状态机的实现 250

10.4.1 有限状态机的实现 250

10.4.2 模糊有限状态机的实现 259

10.5 A*算法和路径寻找技术 264

10.5.1 搜索技术及A*算法 264

10.5.2 路径寻找技术 273

10.6 游戏AI的设计和实现原则 278

10.7 小结 282

习题10 283

参考文献 284

第11章 网络游戏的基本编程技术 285

11.1 网络游戏的基本架构 285

11.2 Winsock编程基础 287

11.2.1 TCP/UDP简介 287

11.2.2 Socket和Winsocket简介 288

11.2.3 Winsock编程结构 289

11.2.4 Winsock地址处理 291

11.2.5 Winsock函数介绍 292

11.2.6 Winsock综合示例 297

11.3 网络游戏通信协议 300

11.3.1 游戏通信协议简介 301

11.3.2 游戏通信协议结构 301

11.3.3 协议打包/解包 301

11.4 小型网络游戏设计与实现 302

11.5 大型多人网络游戏设计策略 304

11.5.1 基于推测的数据传输 304

11.5.2 消息等级化 305

11.5.3 游戏空间剖分 305

11.5.4 消息发送策略 306

11.5.5 集群化服务器 306

11.6 网络传输的优化 307

11.6.1 采用UDP协议 307

11.6.2 采用多播技术 308

11.6.3 使用I/O Completion Port 308

11.7 小结 309

习题11 309

参考文献 309

附录A OGRE使用说明 310

附录B 游戏开发的团队项目说明 324

相关图书
作者其它书籍
返回顶部