目 录
第Ⅰ部分 游戏开发基础
第1章 第一步 2
1.1 Visual Studio概述 3
1.2 什么是C# 5
1.3 数字 6
1.4 英寸、浮点数和双倍数 6
1.5 随机数 9
1.6 猜数字游戏 10
1.7 Mac用户注意事项 14
1.8 安装Unity 14
第2章 Unity中的C#编程 16
2.1 Unity中的默认C#脚本 16
2.2 数字数据类型 19
2.3 数学运算符 24
2.4 位运算符 28
2.5 数学函数 29
2.6 更多C#数据类型 31
2.7 选择语句 34
2.8 循环语句 36
2.9 类和方法 38
2.10 C#编程风格 40
第3章 用GIMP和Unity制作2D图形 41
3.1 GIMP简介 41
3.2 《弹跳甜甜圈》的游戏设计 46
3.3 在GIMP中创建一个木板 47
3.4 Unity中的三块木板和一个甜甜圈 48
第4章 用Blender和Unity制作2D图形 53
4.1 Blender简介 53
4.2 在Blender中创建甜甜圈盒 54
4.3 从Blender导出到Unity 62
4.4 《弹跳甜甜圈》原型:第一个游戏玩法 65
第5章 Unity界面 67
5.1 Unity编辑器 67
5.2 场景视图 72
5.3 层级窗口 74
5.4 项目窗口 76
5.5 检查器窗口 77
5.5 渲染:材质和着色器 78
5.6 灯光 80
5.7 碰撞:甜甜圈与球体 81
5.8 摄像机 81
第6章 《弹跳甜甜圈》的2号原型 85
6.1 标题界面 85
6.2 计分 91
6.3 游戏结束 96
6.4 改进甜甜圈盒子的碰撞 101
6.5 预制件 102
6.6 重构 103
6.7 第2关 106
6.8 5个关卡 111
6.9 发布:《弹跳甜甜圈》的2号原型 119
第7章 用Audacity制作音效 123
7.1 游戏中的音频 123
7.2 安装Audacity 123
7.3 用Audacity制作音效 124
7.4 录制音效 127
7.5 使用互联网上的音效 129
7.6 Unity中的音效编程 130
第8章 使用MuseScore创作音乐 135
8.1 电子游戏中的音乐 135
8.2 安装Musecore 136
8.3 创作自己的乐谱(选读) 136
8.4 使用第三方音乐 141
8.5 将音乐导入Unity 142
第9章 《弹跳甜甜圈1.0》 144
9.1 BUG修复 144
9.2 搁置还是继续 146
9.3 发布:《弹跳甜甜圈1.0》 147
9.4 事后分析 147
第Ⅱ部分 2D游戏开发:从概念到发布
第10章 Unity中的2D工具 151
10.1 Unity 2D设置 151
10.2 精灵 154
10.3 瓦片 156
10.4 2D精灵序列集合动画 162
10.5 2D骨骼动画* 166
第11章 设计2D迷宫游戏 167
11.1 著名的迷宫游戏 168
11.2 创建项目 168
11.3 玩家角色:Dottima Dot 169
11.4 迷宫和背景 172
11.5 剧情 172
11.6 敌人:机器人和问号 173
11.7 游戏设计文档 174
第12章 建立迷宫的第1关 176
12.1 用GIMP为第1关制作瓦片 176
12.2 Unity中的迷宫布局 178
第13章 源代码控制 183
13.1 安装Sourcetree、Git和Bitbucket 183
13.2 用Sourcetree和Git进行源代码控制 184
13.3 在bitbucket上的存储库 187
13.4 在Unity中使用Sourcetree 188
第14章 菜单 192
14.1 源控制设置 192
14.2 主菜单布局 193
14.3 设置菜单布局 199
14.4 使主菜单运作 202
14.5 使设置菜单运作 204
第15章 为玩家角色制作动画 209
15.1 简单的玩家运动 209
15.2 墙面碰撞 212
15.3 闲置动画 213
15.4 运动动画 216
15.5 游戏中的动画 220
第16章 使用Blender制作机器人精灵 224
16.1 在Blender中建立盒子模型 224
16.2 Blender中的照明 234
16.3 3D视图 236
16.4 Blender基本动画教程 241
16.5 机器人摆动手臂的动画 244
16.6 机器人行走的动画 251
第17章 用Blender制作带有纹理的敌人 260
17.1 尖刺球 260
17.2 Blender中的纹理 266
17.3 障碍物 268
17.4 问号 273
第18章 敌人的运动和碰撞 280
18.1 DotRobot的运动和碰撞 280
18.2 尖刺球的运动和碰撞 286
18.3 障碍物和问号的碰撞 290
第19章 武器和抛射物 293
19.1 箭矢 293
19.2 射箭 300
19.3 炸弹 308
19.4 投掷炸弹 314
19.5 重新审视箭矢 320
19.6 Unity中的粒子系统 322
19.7 爆炸和引信的火花效果 323
第20章 生命、关卡设计和经典计分系统 332
20.1 Unity的GUI 332
20.2 生命 333
20.3 关卡 339
20.4 计分 344
20.5 关卡设计 348
第21章 DotGame的音效和音乐 353
21.1 录制语音 353
21.2 网上的更多免费音效 354
21.3 在Audacity中制作更多音效 354
21.4 为Dotgame的音效编码 356
21.5 Dotgame的背景音乐 363
第22章 过场动画 365
22.1 带有动画的标题场景 365
22.2 更多过场动画 368
第23章 测试 369
23.1 电子游戏测试简史 369
23.2 开发过程中的测试 370
23.3 发布前的测试 370
第24章 发布 372
24.1 发布Unity游戏 372
24.2 本地化 374
24.3 游戏即服务 374
24.4 终点还是起点呢 375
附录1 游戏开发词汇表 376
附录2 游戏开发者守则 382
附录3 游戏开发检查清单 383
附录4 法律 385
附录5 本书的C#编码标准 387
