第1部分 入门
第1章 学习开发游戏的基础知识
1.1 认识视频游戏
1.1.1 为什么人们如此沉迷于开发视频游戏
1.1.2 视频游戏的类型
1.2 学习游戏设计的要素
1.2.1 提出基本思想
1.2.2 整理剧情
1.2.3 可视化图形
1.2.4 为游戏选择正确的声音
1.2.5 使用控制器控制游戏
1.2.6 确定游戏模式
1.3 面向对象的编程和游戏
1.3.1 理解OOP
1.3.2 在游戏中应用OOP
1.4 研究相关工具
1.4.1 编译器和开发环境
1.4.2 选择图形工具
1.4.3 选择声音和音乐工具
1.5 小结
1.6 亲身实践
第2章 创建游戏引擎
2.1 什么是游戏引擎
2.2 考虑游戏引擎的作用
2.2.1 将游戏分解为事件
2.2.2 建立游戏的计时机制
2.3 开发游戏引擎
2.3.1 游戏事件函数
2.3.2 GameEngine类
2.4 开发Blizzard示例
2.4.1 编写程序代码
2.4.2 测试完成的程序
2.5 小结
2.6 游戏大变身
第3章 学习绘制基本图形
3.1 图形基础
3.1.1 理解图形坐标系统
3.1.2 学习颜色的基础知识
3.2 查看Windows中的图形
3.2.1 使用设备环境
3.2.2 使用画笔写
3.2.3 使用画刷绘制
3.2.4 使用位图绘制图像
3.2.5 使用调色板管理颜色
3.3 绘制窗口
3.3.1 绘制文本
3.3.2 绘制图元
3.3.3 使用画笔和画刷
3.4 开发Crop Circles示例
3.4.1 编写程序代码
3.4.2 测试完成的程序
3.5 小结
3.6 亲身实践
第4章 绘制图形图像
4.1 位图图像的基础知识
4.2 深入学习位图
4.3 开发位图类
4.3.1 位图类的工作原理
4.3.2 整合代码
4.4 开发Slideshow示例
4.4.1 编写程序代码
4.4.2 汇集资源
4.4.3 测试完成的程序
4.5 小结
4.6 游戏大变身
第2部分 与游戏玩家交互
第5章 使用键盘和鼠标控制游戏
5.1 游戏与用户输入
5.2 了解用户输入设备
5.2.1 接受键盘输入
5.2.2 响应鼠标
5.2.3 使用游戏杆交互
5.3 评估游戏的键盘输入
5.4 跟踪鼠标
5.5 向游戏引擎添加输入支持
5.5.1 添加键盘支持
5.5.2 添加鼠标支持
5.5.3 修改Bitmap类
5.6 开发UFO示例
5.6.1 编写程序代码
5.6.2 测试完成的程序
5.7 小结
5.8 亲身实践
第6章 示例游戏:Brainiac
6.1 游戏的玩法
6.2 设计游戏
6.3 开发游戏
6.4 测试游戏
6.5 小结
6.6 游戏大变身
第7章 使用游戏杆改进输入
7.1 了解游戏杆的基础知识
7.2 校准游戏杆
7.3 追踪游戏杆的移动
7.4 向游戏引擎添加游戏杆支持
7.4.1 访问Win32多媒体功能
7.4.2 开发游戏杆代码
7.5 开发UFO 2示例
7.5.1 编写程序代码
7.5.2 测试完成的程序
7.6 小结
7.7 亲身实践
第8章 示例游戏:Light Cycles
8.1 游戏的玩法
8.2 设计游戏
8.3 开发游戏
8.4 测试游戏
8.5 小结
8.6 游戏大变身
第3部分 在游戏中使用子画面
第9章 使用于画面动画移动对象
9.1 理解动画的基础知识
9.1.1 动画和帧频
9.1.2 了解计算机动画
9.2 2D动画与3D动画
9.3 理解2D动画的类型
9.3.1 基于帧的动画
9.3.2 基于形状的动画
9.4 将子画面动画应用于游戏
9.5 设计通用的子画面
9.6 创建Sprite类
9.6.1 创建和破坏子画面
9.6.2 更新子画面
9.6.3 绘制子画面
9.7 开发Planets示例程序
9.7.1 编写程序代码
9.7.2 测试完成的程序
9.8 小结
9.9 亲身实践
第10章 管理子画面
10.1 了解管理子画面的需求
10.2 设计子画面管理器
10.3 向游戏引擎添加子画面管理器
10.3.1 改进Sprite类
10.3.2 增强游戏引擎
10.4 使用双重缓存消除闪烁
10.5 开发Planets 2示例
10.5.1 编写程序代码
10.5.2 测试完成的程序
10.6 小结
10.7 游戏大变身
第11章 示例游戏:Henway
11.1 游戏的玩法
11.2 设计游戏
11.3 开发游戏
11.4 测试游戏
11.5 小结
11.6 游戏大变身
第4部分 使用声音和音乐
第12章 播放数字声音效果
12.1 理解数字声音
12.2 了解Windows波形声音
12.3 了解声音工具
12.3.1 Sony Sound Forge
12.3.2 Adobe Audition
12.3.3 廉价的声音编辑器
12.4 创建和编辑声音
12.5 查找声音和音乐
12.6 访问波形声音
12.7 播放波形声音
12.7.1 播放文件中的波形声音
12.7.2 播放作为资源的波形声音
12.7.3 循环播放波形声音
12.7.4 停止播放波形声音
12.8 开发Brainiac 2示例程序
12.8.1 编写程序代码
12.8.2 组合资源
12.8.3 测试完成的游戏
12.9 小结
12.10 亲身实践
第13章 播放MIDI音乐
13.1 感受MIDI音乐
13.2 理解Windows媒体控制接口
13.3 使用MCI播放MIDI音乐
13.3.1 打开MIDI设备
13.3.2 播放MIDI歌曲
13.3.3 暂停MIDI歌曲
13.3.4 关闭MIDI设备
13.4 向游戏引擎添加MIDI音乐支持
13.5 开发Henway 2示例程序
13.5.1 编写程序代码
13.5.2 测试完成的游戏
13.6 小结
13.7 亲身实践
第14章 示例游戏:Battle Office
14.1 游戏的玩法
14.2 设计游戏
14.3 开发游戏
14.4 测试游戏
14.5 小结
14.6 亲身实践
第5部分 高级动画
第15章 实现子画面外观动画
15.1 再次介绍帧动画
15.2 设计动画子画面
15.3 向游戏引擎添加动画子画面支持
15.3.1 只绘制位图的一部分
15.3.2 对Sprite类实现动画
15.4 开发Battle Office 2示例程序
15.4.1 编写程序代码
15.4.2 测试完成的游戏
15.5 小结
15.6 游戏大变身
第16章 创建子画面背景
16.1 了解游戏背景的重要性
16.2 了解游戏背景的类型
16.2.1 纯色背景
16.2.2 图像背景
16.2.3 动画背景
16.2.4 滚动背景
16.3 向游戏引擎添加背景支持
16.3.1 创建基本的背景类
16.3.2 创建动画背景类
16.4 开发Roids示例
16.4.1 编写程序代码
16.4.2 测试完成的游戏
16.5 小结
16.6 亲身实践
第17章 示例游戏:Meteor Defense
17.1 游戏的玩法
17.2 设计游戏
17.3 增强游戏引擎中的子画面
17.4 开发游戏
17.5 测试游戏
17.6 小结
17.7 游戏大变身
第6部分 让游戏拥有大脑
第18章 教游戏思考
18.1 理解人工智能
18.2 了解游戏AI的类型
18.2.1 漫游AI
18.2.2 行为AI
18.2.3 策略AI
18.3 开发AI策略
18.4 开发Roids 2示例程序
18.4.1 编写程序代码
18.4.2 测试完成的程序
18.5 小结
18.6 亲身实践
第19章 示例游戏:Space Out
19.1 游戏的玩法
19.2 设计游戏
19.3 向游戏引擎中添加另一个子画面特性
19.4 开发游戏
19.5 测试游戏
19.6 小结
第7部分 增添游戏的趣味性
第20章 使用闪屏增添游戏的活力
20.1 闪屏的重要性
20.2 了解闪屏
20.3 创建Space Out 2游戏
20.3.1 编写游戏代码
20.3.2 测试完成的游戏
20.4 小结
20.5 亲身实践
第21章 使用演示模式展示游戏
21.1 什么是演示模式
21.2 演示模式的细节
21.3 开发Space Out 3游戏
21.3.1 编写游戏代码
21.3.2 测试完成的游戏
21.4 小结
21.5 游戏大变身
第22章 记录高分
22.1 记录得分的重要性
22.2 确定高分数据模型
22.3 存储和检索高分数据
22.4 开发Space Out 4游戏
22.4.1 编写游戏代码
22.4.2 测试完成的游戏
22.5 小结
22.6 亲身实践
第8部分 附加练习
第23章 使用滚动背景更改远景
23.1 什么是滚动背景
23.1.1 横向滚动的背景
23.1.2 纵向滚动的背景
23.1.3 视差滚动背景
23.2 理解滚动背景的工作原理
23.3 向游戏引擎添加滚动背景支持
23.3.1 创建背景图层类
23.3.2 创建滚动背景类
23.4 开发Wanderer示例
23.4.1 编写程序代码
23.4.2 测试完成的程序
23.5 小结
23.6 游戏人变身
第24章 示例游戏:Stunt Jumper
24.1 游戏的玩法
24.2 设计游戏
24.3 开发游戏
24.4 测试游戏
24.5 小结
24.6 游戏大变身
24.7 亲身实践
最后还是要推荐下小编的C/C++游戏编程学习群:六二六八七一九一六,不管你是小白还是大牛,小编我都欢迎,不定期分享干货,包括小编自己整理的一份2017最新的C/C++游戏编程和0基础入门教程,欢迎初学和进阶中的小伙伴。
每天晚上20:00我都会开直播给大家分享C/C++游戏编程知识和路线方法,群里会不定期更新最新的教程和学习方法(进群送2017C/C++游戏编程学习教程),大家都是学习C/C++游戏编程的,或是转行,或是大学生,还有工作中想提升自己能力的C/C++党,如果你是正在学习C/C++游戏编程的小伙伴可以加入学习。最后祝所有程序员都能够走上人生巅峰,让代码将梦想照进现实,非常适合新手学习,有不懂的问题可以随时问我,工作不忙的时候希望可以给大家解惑。
领取专属 10元无门槛券
私享最新 技术干货