C#游戏开发高速新手教程Unity5.5教程
试读文档下载地址:http://pan.baidu.com/s/1slwBHoD
C#是微软公布的高级程序设计语言。这门语言和C语言一样,已经成为了大学计算机相关专业必学的一门语言。非常多初学这门语言的同学,还以为C#仅仅能开发Windows桌面应用程序了,写写ASP.NET站点。
本书将为读者纠正这样的观念,使用C#一样能够开发出精彩的游戏!
目 录
第1章 使用C#编写游戏前的准备 1
1.1 Unity概述 1
1.1.1 Unity简单介绍 1
1.1.2 Unity的下载 1
1.1.3 在线安装Unity 3
1.1.4 离线安装Unity 4
1.1.5 启动Unity 6
1.2 游戏项目 7
1.3 查看特定组件的參考手冊 9
1.4 创建并编辑C#脚本 11
第2章 构建第一个游戏 14
2.1 构建游戏场景 14
2.1.1 新建游戏场景 14
2.1.2 加入游戏对象 15
2.2 改变游戏对象状态 16
2.2.1 使用Main Camera与Game视图 16
2.2.2 使用Transform组件 18
2.2.3 直接操作游戏对象 19
2.3 Scene视图的快捷操作 20
2.4 使用脚本 22
2.4.1 演示样例效果展示 22
2.4.2 脚本的构成 23
2.4.3 将脚本赋予游戏对象的方法 25
2.4.4 执行游戏 26
2.5 小结 26
第3章 游戏对象的属性——变量 27
3.1 游戏对象的属性 27
3.2 指代数据的名称 28
3.2.1 变量命名规则 28
3.2.2 变量命名约定 28
3.2.3 变量名与属性名的不同 29
3.3 属性名的可见性 29
3.4 设定属性的数据类型 30
3.4.1 数据类型 30
3.4.2 属性数据类型的体现形式 31
3.5 使用脚本变量 32
3.5.1 声明变量 32
3.5.2 变量的初始化 33
3.5.3 变量的运算 33
3.5.4 成员变量 33
3.5.5 变量的作用域 35
3.6 语句 36
3.7 游戏演示样例 37
3.8 小结 39
第4章 游戏对象的行为逻辑——方法 40
4.1 游戏对象的行为逻辑 40
4.2 脚本中的方法 40
4.3 使用脚本方法 41
4.3.1 方法与变量 41
4.3.2 定义方法 42
4.3.3 调用方法 42
4.3.4 方法使用演示样例 43
4.4 Unity内置的方法 44
4.5 方法的參数 46
4.5.1 參数的作用 46
4.5.2 对于游戏的实际意义 46
4.6 降低代码的反复书写 48
4.7 游戏演示样例 50
4.8 小结 53
第5章 游戏运行路径的选择——推断 54
5.1 游戏的运行路径 54
5.2 推断玩家的选择 54
5.2.1 最经常使用的推断语句——if 55
5.2.2 if语句游戏演示样例 56
5.2.3 其他推断语句 59
5.3 循环遍历每一个数据。并做出推断 60
5.3.1 大量数据的存储与引用 61
5.3.2 遍历大量的数据 64
5.4 游戏演示样例 67
5.4.1 游戏执行效果 68
5.4.2 游戏实现步骤 69
5.4.3 游戏脚本的编写 69
5.5 小结 75
第6章 游戏对象间的交流 76
6.1 在游戏外部的体现 76
6.2 在游戏内部的体现 77
6.3 点运算符 78
6.3.1 对象、组件与类 78
6.4 在脚本中使用点运算符 79
6.4.1 訪问组件自己的属性和方法 79
6.4.2 訪问同一对象上的其他组件 80
6.4.3 訪问其他对象上的组件 81
6.5 游戏演示样例 83
6.6 小结 87
第7章 游戏的中枢——状态管理机制 88
7.1 概述 88
7.2 工作流程 89
7.2.1 游戏状态 89
7.2.2 将游戏控制权授予游戏状态 89
7.2.3 游戏状态的切换 90
7.2.4 实时记录当前所处的游戏状态 90
7.3 类的实例化 91
7.4 引入接口 94
7.4.1 接口概述 94
7.4.2 演示样例演示 95
7.5 小结 97
第8章 状态管理机制使用演示样例 98
8.1 加入游戏状态 98
8.2 核心脚本对游戏状态的控制 100
8.2.1 核心脚本遇到的问题 100
8.2.2 演示样例演示1 101
8.2.3 演示样例演示2 102
8.3 核心脚本里的OnGUI() 103
8.3.1 加入OnGUI() 104
8.3.2 演示样例演示1 104
8.3.3 演示样例演示2 106
8.4 游戏场景的切换 107
8.4.1 加入游戏场景 107
8.4.2 引入的问题及解决方法 109
8.4.3 演示样例演示 110
8.5 演示样例代码 113
8.5.1 核心脚本 113
8.5.2 接口IStateBase 114
8.5.3 游戏状态 114
8.6 小结 117
第9章 游戏演示样例——胶囊的净化战争 118
9.0 游戏剧情梗概 118
9.1 搭建游戏的框架 118
9.1.1 游戏执行流程图 119
9.1.2 核心脚本 119
9.1.3 接口 120
9.1.4 游戏状态 121
9.1.5 框架执行效果 126
9.2 存储游戏数据 128
9.3 加入游戏启动画面 130
9.4 加入“胶囊”Player对象 133
9.5 “胶囊”的设置 135
9.5.1 加入脚本组件 136
9.5.2 能够自转的胶囊 136
9.5.3 胶囊的颜色选择 141
9.5.4 胶囊生命值的设置 145
9.5.5 切换到下一游戏状态 146
9.6 胶囊的移动 147
9.6.1 加入刚体组件 148
9.6.2 负责移动效果的代码 149
9.6.3 移动效果展示 151
9.7 游戏视图的切换 152
9.7.1 加入摄像机 152
9.7.2 实现视图切换功能 154
9.7.3 应用于游戏 158
9.8 荒凉的星球及其原住民 163
9.8.1 加入荒凉的地面 163
9.8.2 原住民:益生菌和“埃博拉”病毒 165
9.9 胶囊的进化之旅 169
9.9.1 凶狠的埃博拉病毒 169
9.9.2 病毒的净化过程 172
9.9.3 触发净化的时机 175
9.10 加入游戏分数与生命值 178
9.10.1 游戏的规则 178
9.10.2 分数和生命值的增减 180
9.10.3 游戏各状态的切换 181
9.10.4 游戏视图上的分数和生命值 187
9.11 游戏流程图及源代码概述 188
9.11.1 游戏执行流程图 189
9.11.2 核心脚本 189
9.11.3 接口 191
9.11.4 游戏状态 191
9.11.5 其他功能脚本 201
9.12 小结 206