第一部分 Unity基础 3
第1章 Unity简介 3
1.1 内容简介 3
1.2 Unity概述 4
1.2.1 Unity能够做什么 4
1.2.2 获取Unity 5
第2章 Unity一览 6
2.1 编辑器 6
2.2 场景视图 9
2.2.1 模式选择器 9
2.2.2 场景视图内的移动 10
2.2.3 手柄控件 11
2.3 Hierarchy窗格 11
2.4 项目视图 12
2.5 Inspector 13
2.6 游戏视图 14
2.7 小结 14
第3章 游戏中的脚本 15
3.1 C#快速入门 16
3.2 Mono和Unity 16
3.3 游戏对象、组件和脚本 18
3.3.1 Inspector 19
3.3.2 组件 19
3.4 重要的方法 20
3.4.1 Awake和OnEnable 20
3.4.2 Start 20
3.4.3 Update和LateUpdate 21
3.5 协程 22
3.6 创建和销毁对象 23
3.6.1 实例化 24
3.6.2 从头创建对象 24
3.6.3 销毁对象 24
3.7 特性 25
3.8 脚本中的时间 27
3.9 记录到控制台 28
3.10 小结 28
第二部分 构建2D游戏:地精寻宝 31
第4章 开始构建游戏 31
4.1 游戏设计 32
4.2 创建项目并导入资源 35
4.3 创建地精 37
4.4 绳索 41
4.4.1 编写控制Rope的代码 43
4.4.2 配置绳索 52
4.5 小结 54
第5章 建立游戏玩法 55
5.1 输入 55
5.1.1 Unity Remote 55
5.1.2 添加倾斜控制 56
5.1.3 控制绳索 59
5.1.4 使摄像机跟随地精 61
5.1.5 脚本与调试 63
5.2 创建地精的代码 66
5.3 设置Game Manager 75
5.3.1 设置和重置游戏 81
5.3.2 创建新地精 82
5.3.3 移除旧地精 83
5.3.4 重置游戏 84
5.3.5 处理触碰 85
5.3.6 到达出口 85
5.3.7 暂停与恢复 86
5.3.8 处理Reset按钮 86
5.4 准备场景 86
5.5 小结 88
第6章 使用陷阱和目标建立游戏玩法 89
6.1 简单的陷阱 89
6.2 宝藏和出口 91
6.3 添加背景 94
6.4 小结 95
第7章 优化游戏 96
7.1 更新游戏的画面 97
7.2 更新物理组件 100
7.3 背景 104
7.3.1 层 104
7.3.2 创建背景 105
7.3.3 不同的背景 107
7.3.4 井底 109
7.3.5 更新摄像机 110
7.4 用户界面 111
7.5 无敌模式 117
7.6 小结 118
第8章 完成Gnome's Well游戏 119
8.1 更多陷阱和关卡对象 119
8.1.1 尖刺 119
8.1.2 转轮 120
8.1.3 障碍 123
8.2 粒子效果 123
8.2.1 定义粒子的材质 123
8.2.2 Blood Fountain 124
8.2.3 Blood Explosion 127
8.2.4 使用粒子系统 128
8.3 主菜单 128
8.4 音效 132
8.5 完成游戏后的挑战 133
第三部分 构建一个3D游戏:太空射击游戏 137
第9章 构建一个太空射击游戏 137
9.1 设计游戏 138
9.2 架构 141
9.3 创建场景 142
9.3.1 飞船 143
9.3.2 空间站 147
9.3.3 天空盒 149
9.3.4 画布 152
9.4 小结 153
第10章 输入和飞行控制 154
10.1 输入 154
10.1.1 添加摇杆 154
10.1.2 输入管理器 157
10.2 飞行控制 159
10.2.1 指示器 160
10.2.2 Indicator Manager 164
10.3 小结 166
第11章 添加武器及锁定目标 167
11.1 武器 167
11.1.1 飞船的武器 170
11.1.2 Fire按钮 172
11.2 目标标线 179
11.3 小结 179
第12章 小行星与伤害 180
12.1 小行星 180
12.2 造成伤害与受到伤害 185
12.3 小结 192
第13章 音效、菜单、死亡及爆炸 193
13.1 菜单 193
13.1.1 主菜单 194
13.1.2 Paused画面 195
13.1.3 GameOver画面 196
13.1.4 添加Pause按钮 197
13.2 Game Manager和死亡 197
13.2.1 起始点 198
13.2.2 创建Game Manager 198
13.2.3 设置场景 204
13.3 边界 207
13.3.1 创建UI 207
13.3.2 编写代码处理边界 208
13.4 最终优化 213
13.4.1 太空尘埃 213
13.4.2 轨迹渲染器 215
13.4.3 音效 219
13.4.4 爆炸 221
13.5 小结 221
第四部分 高级功能 225
第14章 光照与着色器 225
14.1 材质与着色器 225
14.2 全局光照 235
14.3 性能考虑 240
14.3.1 Profiler 240
14.3.2 获取设备数据 243
14.3.3 通用提示 243
14.4 小结 244
第15章 在Unity中创建GUI 245
15.1 Unity GUI系统的工作方式 245
15.1.1 Canvas 245
15.1.2 RectTransform 246
15.1.3 Rect工具 247
15.1.4 锚点 248
15.2 控件 249
15.3 事件和光线投射 249
15.4 使用布局系统 250
15.5 缩放Canvas 252
15.6 画面切换 253
15.7 小结 253
第16章 编辑器扩展 254
16.1 创建自定义向导 255
16.2 创建自定义编辑器窗口 261
16.2.1 Editor GUIAPI 262
16.2.2 AssetDatabase 270
16.3 创建自定义属性绘制器 270
16.3.1 创建类 273
16.3.2 设置属性的高度 274
16.3.3 覆盖OnGUI 274
16.3.4 获取属性 274
16.3.5 创建属性作用域 275
16.3.6 绘制标签 275
16.3.7 计算矩形 275
16.3.8 获取值 276
16.3.9 设置检查修改 276
16.3.10 绘制滑动条 276
16.3.11 绘制字段 276
16.3.12 检查修改 277
16.3.13 存储属性 277
16.3.14 进行测试 277
16.4 创建自定义Inspector 277
16.4.1 创建一个简单脚本 277
16.4.2 自定义Inspector的创建 278
16.4.3 设置类 279
16.4.4 定义颜色和属性 280
16.4.5 设置变量 280
16.4.6 开始绘制GUI 280
16.4.7 绘制控件 280
16.4.8 应用修改 281
16.4.9 进行测试 281
16.5 小结 282
第17章 编辑器之外 283
17.1 Unity服务生态系统 283
17.1.1 Asset Store 283
17.1.2 Unity C1oud Build 290
17.1.3 UnityAds 291
17.2 部署 291
17.2.1 设置项目 291
17.2.2 设置目标 293
17.2.3 针对平台构建游戏 295
17.3 拓展资料 298
作者简介 300
关于封面 300