计算机游戏程序设计(基础篇)(第3版)

计算机游戏程序设计(基础篇)(第3版)
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者: , ,
2016-06
版次: 3
ISBN: 9787121288661
定价: 45.00
装帧: 平装
开本: 16开
纸张: 胶版纸
页数: 300页
字数: 520千字
正文语种: 简体中文
35人买过
  • 本书为“十二五”普通高等教育本科国家级规划教材,着重介绍二维游戏程序设计所需的基础知识,包括游戏图像处理、二维游戏场景绘制、游戏交互界面设计、二维动画合成、碰撞检测与运动模拟、游戏粒子系统、游戏音效编程、游戏中人工智能、网络游戏编程、游戏脚本编程等,涵盖了二维游戏程序设计的主要方面,全书共14章,强调理论与实践结合,通过游戏实例启发性地说明游戏编程的相关原理和方法,每个主要章节均配有相应的游戏片段实例,最后一章通过一个完整的综合实例贯穿了本书的主要知识点和游戏开发要点。本书还有进阶篇的配套教材。本书面向的读者对象是那些已掌握基本的程序设计技能,并立志于从事计算机游戏软件开发的程序员和游戏开发爱好者。本书既可以作为数字媒体技术、计算机、软件工程等专业的本科生(研究生)的教材,也可用于游戏学院和各类游戏编程人员培训班的参考资料,对正在从事游戏开发和制作的相关人员也具有重要的参考价值。 耿卫东,浙江大学教授,中国图像图形学会计算机动画与数字娱乐专业委员会委员,中国人工智能学会智能CAD与数字艺术专业委员会委员,教育部动画、数字媒体专业教学指导委员会委员。 第1章 游戏开发简介 001
    1.1 什么是游戏 001
    1.2 计算机游戏的发展 003
    1.3 计算机游戏的分类 006
    1.4 计算机游戏开发的基本理念和
    方法 011
    1.5 游戏开发的基本流程 012
    1.6 游戏开发的准则和“忠告” 014
    1.7 游戏编程人员的基本素质
    要求 016
    小结 017
    习题1 017
    第2章 计算机游戏策划简介 018
    2.1 计算机游戏策划的概念和
    分类 018
    2.2 计算机游戏策划人员应具备的
    素质 019
    2.3 计算机游戏策划基础 020
    2.3.1 游戏规则 020
    2.3.2 奖罚机制 021
    2.3.3 游戏资源 021
    2.3.4 玩家技能 023
    2.3.5 反馈机制 025
    2.3.6 难度平衡 026
    2.4 计算机游戏的策划与开发
    团队 028
    小结 030
    习题2 030
    第3章 游戏图像处理 031
    3.1 图像概述 031
    3.2 颜色混合和半透明效果 035
    3.2.1 基本原理和步骤 035
    3.2.2 Alpha融合技术 036
    3.3 图像操作 038
    3.3.1 直方图 038
    3.3.2 几何运算 039
    3.3.3 图像滤波算子 040
    3.3.4 形态算子 042
    3.4 图像特效 044
    小结 046
    习题3 046
    第4章 游戏引擎概览 047
    4.1 游戏引擎的提出 047
    4.2 常用游戏引擎 048
    4.3 Cocos2d-x引擎介绍 052
    4.3.1 Cocos2d-x的核心概念 052
    4.3.2 Cocos2d-x中的坐标系 056
    4.3.3 Cocos2d-x中的用户交互响应 057
    4.3.4 Cocos2d-x的内存管理机制 058
    4.3.5 Cocos2d-x中的新增的3D特性 060
    4.4 Cocos2d-x开发环境配置 060
    4.4.1 Windows下开发环境配置 060
    4.4.2 Android开发环境配置 062
    4.4.3 iOS下的开发环境配置 066
    小结 066
    习题4 067
    第5章 二维游戏场景绘制 068
    5.1 游戏场景的组织和管理 068
    5.2 游戏画面背景 069
    5.2.1 二维游戏背景的类型 069
    5.2.2 游戏地图的创建和显示 070
    5.2.3 砖块地图 073
    5.2.4 砖块地图编辑器 074
    5.2.5 Cocos2d-x中砖块地图的实现 076
    5.3 文字与字体 078
    5.3.1 字体编辑器 078
    5.3.2 Cocos2d-x中的文本绘制 079
    5.4 菜单项 082
    5.5 扩展控件 086
    5.5.1 滚动框 086
    5.5.2 滑动条控件 090
    5.5.3 开关控件 091
    5.5.4 按钮控件 091
    5.5.5 Scale9Sprite 092
    5.6 游戏场景绘制实例――英雄
    快跑 093
    小结 099
    习题和实验 099
    第6章 游戏交互界面设计 100
    6.1 交互界面设计概述 100
    6.2 游戏的可玩性与交互界面 100
    6.3 交互界面设计基础 101
    6.3.1 交互界面的色彩设计 101
    6.3.2 交互界面的形式 102
    6.4 游戏软件的交互界面设计 107
    6.5 Cocos2d-x中的界面设计 108
    6.5.1 Cocos2d-x中的UI编辑器 108
    6.5.2 用户界面编辑器的使用 108
    6.5.3 在Cocos2d-x引擎中的应用 110
    6.6 Cocos2d-x中的用户交互 111
    6.7 游戏界面设计实例――贪
    食豆 113
    小结 117
    习题和实验 117
    第7章 二维游戏动画合成 118
    7.1 计算机动画概述 118
    7.2 常见计算机动画技术 118
    7.2.1 基本动画技术 118
    7.2.2 脚本驱动的动画技术 119
    7.2.3 骨骼动画技术 120
    7.2.4 常见动画制作软件及其文件
    格式 120
    7.3 Cocos2d-x中的动作类 121
    7.3.1 瞬时动作(ActionInstant) 121
    7.3.2 延时动作(ActionInterval) 122
    7.3.3 组合动作
    (ActionAcombination) 123
    7.3.4 速度的指定(speed) 124
    7.3.5 跟随动作(follow) 124
    7.4 Cocos2d-x中的动画 125
    7.4.1 Cocos2d-x中与动画相关的类 125
    7.4.2 Cocos2d-x中的动画编辑器 125
    7.4.3 Cocos2d-x中动画的实现 127
    7.5 游戏动画实例――侠客行 128
    小结 139
    习题和实验 139
    第8章 碰撞检测和运动模拟 140
    8.1 碰撞检测 140
    8.2 物体遮挡关系 141
    8.3 物体运动模拟 141
    8.4 Cocos2d-x中的物理引擎 142
    8.4.1 Box2D简介 142
    8.4.2 Box2D中的相关类 143
    8.4.3 Box2D的使用 149
    8.5 游戏物理模拟实例 150
    8.5.1 基于Box2D的游戏实例 150
    8.5.2 Cocos2d-x的物理引擎Physics的
    应用 158
    小结 159
    习题和实验 160
    第9章 游戏粒子系统 161
    9.1 粒子系统概述 161
    9.2 粒子效果 161
    9.3 Cocos2d-x中的粒子系统 162
    9.4 粒子的生命周期 163
    9.5 粒子属性 164
    9.6 粒子编辑器 165
    9.7 粒子系统实例―烟花瀑 169
    小结 175
    习题和实验 175
    第10章 游戏音效编程 177
    10.1 声音基础 177
    10.2 常见的音效引擎 181
    10.3 Cocos2d-x中的音乐和
    音效 182
    10.3.1 音乐和音效的预加载 182
    10.3.2 播放和停止 183
    10.3.3 暂停和恢复播放 185
    10.3.4 其他成员 185
    10.4 游戏音效编程实例 186
    小结 188
    习题和实验 188
    第11章 游戏中的人工智能 189
    11.1 游戏AI概述 189
    11.2 游戏AI基本类型 190
    11.3 常用的游戏AI技术 190
    11.3.1 有限状态机 191
    11.3.2 模糊逻辑 192
    11.3.3 人工神经网络 192
    11.3.4 遗传算法 193
    11.3.5 脚本语言 193
    11.4 二维游戏寻路与A*算法 194
    11.4.1 游戏寻路技术 194
    11.4.2 A*算法及其实现 195
    11.5 游戏AI实例――迷宫寻宝 200
    小结 205
    习题和实验 206
    第12章 网络游戏编程 207
    12.1 网络游戏的基本架构 207
    12.2 网络游戏通信协议 208
    12.3 网络游戏多线程编程 209
    12.4 常见的游戏开发网络框架 211
    12.5 Cocos2d-x中的网络通信 211
    12.5.1 HTTP网络通信 212
    12.5.2 Socket网络通信 214
    12.5.3 WebSocket网络通信 217
    12.6 游戏网络编程实例――网络
    坦克大战 218
    12.6.1 准备工作 218
    12.6.2 解析JSON 218
    12.6.3 连接网络 220
    12.6.4 游戏逻辑实现 225
    小结 227
    习题和实验 228
    第13章 游戏中的脚本编程 229
    13.1 Lua简介 229
    13.2 Lua语言的语法 230
    13.2.1 数值和类型 230
    13.2.2 表达式 231
    13.2.3 语句 232
    13.2.4 函数 235
    13.3 Lua程序与C++程序通信 236
    13.3.1 C++代码调用Lua函数 237
    13.3.2 Lua代码调用C++函数 238
    13.4 Lua脚本在Cocos2d-x中的
    应用 239
    13.5 游戏脚本编程实例――守卫
    宝箱 239
    小结 246
    习题和实验 246
    第14章 计算机游戏综合实例 247
    14.1 全局控制和管理 247
    14.2 游戏数据解析 250
    14.2.1 CSV文件解析 250
    14.2.2 SQLite数据库应用 253
    14.3 场景绘制 262
    14.3.1 地图绘制 263
    14.3.2 模型封装和导入 267

    14.4 界面设计 276
    14.4.1 主界面构建 276
    14.4.2 对话框设计 280
    14.5 动画效果 285
    14.6 游戏AI 287
    小结 289
    参考文献 290
  • 内容简介:
    本书为“十二五”普通高等教育本科国家级规划教材,着重介绍二维游戏程序设计所需的基础知识,包括游戏图像处理、二维游戏场景绘制、游戏交互界面设计、二维动画合成、碰撞检测与运动模拟、游戏粒子系统、游戏音效编程、游戏中人工智能、网络游戏编程、游戏脚本编程等,涵盖了二维游戏程序设计的主要方面,全书共14章,强调理论与实践结合,通过游戏实例启发性地说明游戏编程的相关原理和方法,每个主要章节均配有相应的游戏片段实例,最后一章通过一个完整的综合实例贯穿了本书的主要知识点和游戏开发要点。本书还有进阶篇的配套教材。本书面向的读者对象是那些已掌握基本的程序设计技能,并立志于从事计算机游戏软件开发的程序员和游戏开发爱好者。本书既可以作为数字媒体技术、计算机、软件工程等专业的本科生(研究生)的教材,也可用于游戏学院和各类游戏编程人员培训班的参考资料,对正在从事游戏开发和制作的相关人员也具有重要的参考价值。
  • 作者简介:
    耿卫东,浙江大学教授,中国图像图形学会计算机动画与数字娱乐专业委员会委员,中国人工智能学会智能CAD与数字艺术专业委员会委员,教育部动画、数字媒体专业教学指导委员会委员。
  • 目录:
    第1章 游戏开发简介 001
    1.1 什么是游戏 001
    1.2 计算机游戏的发展 003
    1.3 计算机游戏的分类 006
    1.4 计算机游戏开发的基本理念和
    方法 011
    1.5 游戏开发的基本流程 012
    1.6 游戏开发的准则和“忠告” 014
    1.7 游戏编程人员的基本素质
    要求 016
    小结 017
    习题1 017
    第2章 计算机游戏策划简介 018
    2.1 计算机游戏策划的概念和
    分类 018
    2.2 计算机游戏策划人员应具备的
    素质 019
    2.3 计算机游戏策划基础 020
    2.3.1 游戏规则 020
    2.3.2 奖罚机制 021
    2.3.3 游戏资源 021
    2.3.4 玩家技能 023
    2.3.5 反馈机制 025
    2.3.6 难度平衡 026
    2.4 计算机游戏的策划与开发
    团队 028
    小结 030
    习题2 030
    第3章 游戏图像处理 031
    3.1 图像概述 031
    3.2 颜色混合和半透明效果 035
    3.2.1 基本原理和步骤 035
    3.2.2 Alpha融合技术 036
    3.3 图像操作 038
    3.3.1 直方图 038
    3.3.2 几何运算 039
    3.3.3 图像滤波算子 040
    3.3.4 形态算子 042
    3.4 图像特效 044
    小结 046
    习题3 046
    第4章 游戏引擎概览 047
    4.1 游戏引擎的提出 047
    4.2 常用游戏引擎 048
    4.3 Cocos2d-x引擎介绍 052
    4.3.1 Cocos2d-x的核心概念 052
    4.3.2 Cocos2d-x中的坐标系 056
    4.3.3 Cocos2d-x中的用户交互响应 057
    4.3.4 Cocos2d-x的内存管理机制 058
    4.3.5 Cocos2d-x中的新增的3D特性 060
    4.4 Cocos2d-x开发环境配置 060
    4.4.1 Windows下开发环境配置 060
    4.4.2 Android开发环境配置 062
    4.4.3 iOS下的开发环境配置 066
    小结 066
    习题4 067
    第5章 二维游戏场景绘制 068
    5.1 游戏场景的组织和管理 068
    5.2 游戏画面背景 069
    5.2.1 二维游戏背景的类型 069
    5.2.2 游戏地图的创建和显示 070
    5.2.3 砖块地图 073
    5.2.4 砖块地图编辑器 074
    5.2.5 Cocos2d-x中砖块地图的实现 076
    5.3 文字与字体 078
    5.3.1 字体编辑器 078
    5.3.2 Cocos2d-x中的文本绘制 079
    5.4 菜单项 082
    5.5 扩展控件 086
    5.5.1 滚动框 086
    5.5.2 滑动条控件 090
    5.5.3 开关控件 091
    5.5.4 按钮控件 091
    5.5.5 Scale9Sprite 092
    5.6 游戏场景绘制实例――英雄
    快跑 093
    小结 099
    习题和实验 099
    第6章 游戏交互界面设计 100
    6.1 交互界面设计概述 100
    6.2 游戏的可玩性与交互界面 100
    6.3 交互界面设计基础 101
    6.3.1 交互界面的色彩设计 101
    6.3.2 交互界面的形式 102
    6.4 游戏软件的交互界面设计 107
    6.5 Cocos2d-x中的界面设计 108
    6.5.1 Cocos2d-x中的UI编辑器 108
    6.5.2 用户界面编辑器的使用 108
    6.5.3 在Cocos2d-x引擎中的应用 110
    6.6 Cocos2d-x中的用户交互 111
    6.7 游戏界面设计实例――贪
    食豆 113
    小结 117
    习题和实验 117
    第7章 二维游戏动画合成 118
    7.1 计算机动画概述 118
    7.2 常见计算机动画技术 118
    7.2.1 基本动画技术 118
    7.2.2 脚本驱动的动画技术 119
    7.2.3 骨骼动画技术 120
    7.2.4 常见动画制作软件及其文件
    格式 120
    7.3 Cocos2d-x中的动作类 121
    7.3.1 瞬时动作(ActionInstant) 121
    7.3.2 延时动作(ActionInterval) 122
    7.3.3 组合动作
    (ActionAcombination) 123
    7.3.4 速度的指定(speed) 124
    7.3.5 跟随动作(follow) 124
    7.4 Cocos2d-x中的动画 125
    7.4.1 Cocos2d-x中与动画相关的类 125
    7.4.2 Cocos2d-x中的动画编辑器 125
    7.4.3 Cocos2d-x中动画的实现 127
    7.5 游戏动画实例――侠客行 128
    小结 139
    习题和实验 139
    第8章 碰撞检测和运动模拟 140
    8.1 碰撞检测 140
    8.2 物体遮挡关系 141
    8.3 物体运动模拟 141
    8.4 Cocos2d-x中的物理引擎 142
    8.4.1 Box2D简介 142
    8.4.2 Box2D中的相关类 143
    8.4.3 Box2D的使用 149
    8.5 游戏物理模拟实例 150
    8.5.1 基于Box2D的游戏实例 150
    8.5.2 Cocos2d-x的物理引擎Physics的
    应用 158
    小结 159
    习题和实验 160
    第9章 游戏粒子系统 161
    9.1 粒子系统概述 161
    9.2 粒子效果 161
    9.3 Cocos2d-x中的粒子系统 162
    9.4 粒子的生命周期 163
    9.5 粒子属性 164
    9.6 粒子编辑器 165
    9.7 粒子系统实例―烟花瀑 169
    小结 175
    习题和实验 175
    第10章 游戏音效编程 177
    10.1 声音基础 177
    10.2 常见的音效引擎 181
    10.3 Cocos2d-x中的音乐和
    音效 182
    10.3.1 音乐和音效的预加载 182
    10.3.2 播放和停止 183
    10.3.3 暂停和恢复播放 185
    10.3.4 其他成员 185
    10.4 游戏音效编程实例 186
    小结 188
    习题和实验 188
    第11章 游戏中的人工智能 189
    11.1 游戏AI概述 189
    11.2 游戏AI基本类型 190
    11.3 常用的游戏AI技术 190
    11.3.1 有限状态机 191
    11.3.2 模糊逻辑 192
    11.3.3 人工神经网络 192
    11.3.4 遗传算法 193
    11.3.5 脚本语言 193
    11.4 二维游戏寻路与A*算法 194
    11.4.1 游戏寻路技术 194
    11.4.2 A*算法及其实现 195
    11.5 游戏AI实例――迷宫寻宝 200
    小结 205
    习题和实验 206
    第12章 网络游戏编程 207
    12.1 网络游戏的基本架构 207
    12.2 网络游戏通信协议 208
    12.3 网络游戏多线程编程 209
    12.4 常见的游戏开发网络框架 211
    12.5 Cocos2d-x中的网络通信 211
    12.5.1 HTTP网络通信 212
    12.5.2 Socket网络通信 214
    12.5.3 WebSocket网络通信 217
    12.6 游戏网络编程实例――网络
    坦克大战 218
    12.6.1 准备工作 218
    12.6.2 解析JSON 218
    12.6.3 连接网络 220
    12.6.4 游戏逻辑实现 225
    小结 227
    习题和实验 228
    第13章 游戏中的脚本编程 229
    13.1 Lua简介 229
    13.2 Lua语言的语法 230
    13.2.1 数值和类型 230
    13.2.2 表达式 231
    13.2.3 语句 232
    13.2.4 函数 235
    13.3 Lua程序与C++程序通信 236
    13.3.1 C++代码调用Lua函数 237
    13.3.2 Lua代码调用C++函数 238
    13.4 Lua脚本在Cocos2d-x中的
    应用 239
    13.5 游戏脚本编程实例――守卫
    宝箱 239
    小结 246
    习题和实验 246
    第14章 计算机游戏综合实例 247
    14.1 全局控制和管理 247
    14.2 游戏数据解析 250
    14.2.1 CSV文件解析 250
    14.2.2 SQLite数据库应用 253
    14.3 场景绘制 262
    14.3.1 地图绘制 263
    14.3.2 模型封装和导入 267

    14.4 界面设计 276
    14.4.1 主界面构建 276
    14.4.2 对话框设计 280
    14.5 动画效果 285
    14.6 游戏AI 287
    小结 289
    参考文献 290
查看详情