批量上传,套装书可能不全,下单前咨询在线客服! 正版书 !!!
¥ 71.46 5.5折 ¥ 129.8 全新
库存32件
作者杜亚南
出版社人民邮电出版社
ISBN9787115553645
出版时间2021-10
装帧平装
开本其他
定价129.8元
货号29307053
上书时间2024-10-26
这是一本以技术讲解与项目实战为主的Unity游戏开发教程图书。本书以简洁明快的语言对Unity的重点知识进行了讲解,配合详细的图文注释和大量的项目实例,让读者能够轻松快速地入门Unity,同时在本书后面的章节中也包含了很多游戏编程中的进阶知识,可供基础较好的读者进行拓展。另外,本书还为每个章节中的项目实战提供了配套视频,视频中通过讲解项目实战来详细讲解每章的重点知识,以便读者更加轻松地入门。
全书共16章。第1~4章为Unity基础部分,主要介绍Unity的基础操作和与编程相关的知识;第5~10章为Unity进阶部分,主要按照“物理系统→粒子系统→动画系统→导航系统→游戏界面系统→2D游戏开发”这一流程介绍Unity游戏开发的核心技术和思路;第11~15章为Unity拓展部分,主要介绍数据网络、AR和VR等高级技术的使用;第16章为3D游戏开发综合实例,让读者以一个完整的实战项目来结束本书的学习。
本书既面向初学者,又为具备Unity基础而想更进一步学习或是需要一本Unity工具书查询的读者提供了便捷的渠道。全书内容均采用Unity 2020和Visual Studio 2019编写,请读者使用同样或更高的版本学习。
9年技术开发及项目团队管理经验,曾就职于北京远景天图科技有限公司,制作多款游戏与企业应用,在iOS、HTML5、.NET、Unity等方面有很深的造诣。后担任多年北京线下培训机构iOS主管与Unity总监,授课经验丰富,风格幽默风趣,课程实战性强。曾打造iOS与Unity方向完整的线下课程体系,非常适合零基础和刚入门的学员系统深入学习,深受学生与编程爱好者的欢迎。
第1章 基础知识 025
1.1 游戏引擎026
1.1.1 认识游戏引擎 026
1.1.2 Unity的优势 026
1.2 下载与安装 027
1.2.1 Unity Hub的下载与安装 027
1.2.2 Visual Studio的下载与安装 029
1.3 认识编辑器029
1.3.1 设置脚本编辑器与语言 029
1.3.2 了解编辑器结构 030
1.3.3 管理项目文件 032
1.3.4 管理游戏物体 033
1.3.5 游戏场景设置 034
1.3.6 预览游戏 035
1.3.7 管理“控制台”面板 036
第2章 打造3D游戏世界 037
2.1 操控物体038
2.1.1 了解3D坐标系 038
2.1.2 世界坐标系与本地坐标系 038
2.1.3 创建实物 039
2.1.4 物体中心点 039
2.1.5 物体的操作 040
实例:制作电脑桌 041
2.2 3D模型042
2.2.1 网格 042
2.2.2 材质 043
2.2.3 资源商店. 044
实例:导入商店资源 045
2.3 3D场景元素046
2.3.1 地形 046
技术专题:绘制纹理 048
技术专题:抬高地面 049
2.3.2 树木 049
2.3.3 草细节 050
2.3.4 水效果 051
2.4 综合案例:打造野外风景051
2.4.1 游戏描述 051
2.4.2 创建地形 052
2.4.3 绘制地表 053
2.4.4 添加植被和河流 053
2.4.5 角色预览 054
第3章 游戏脚本基础 055
3.1 个组件脚本 056
3.1.1 什么是组件 056
3.1.2 组件脚本的创建 056
3.1.3 组件的使用 057
技术专题:区分两种粘贴组件的方式 058
3.1.4 脚本的生命周期 058
3.1.5 多个脚本的执行顺序 059
3.2 游戏物体 059
3.2.1 物体名称和激活状态 059
3.2.2 给物体设定一个标签 060
3.2.3 给物体设定一个图层 060
3.3 线性代数 061
3.3.1 标量与向量 061
3.3.2 向量的加法 061
3.3.3 向量的减法 062
3.3.4 点乘获取夹角角度 062
3.3.5 叉乘获取平面垂直向量 062
3.4 预制件的创建与使用 062
3.4.1 创建预制件 063
3.4.2 编辑预制件 063
3.4.3 添加组件与子物体 064
3.4.4 预制件变体 065
操作演示:搭建像素游戏场景 065
3.5 游戏常用API 066
3.5.1 Vector3常用属性方法 066
3.5.2 Quaternion常用属性方法 067
3.5.3 Debug常用属性方法 067
操作演示:调试示例 067
3.5.4 GameObject常用属性方法 068
技术专题:区分activeInHierarchy和activeSelf 068
3.5.5 Time常用属性方法 068
3.5.6 Mathf常用属性方法 068
3.5.7 Application 常用属性方法 069
3.5.8 Scene常用属性方法 069
3.5.9 Transform常用属性方法 069
技术专题:区分Transform与Vector3中的向量 069
3.6 输入控制069
3.6.1 键盘和鼠标 069
3.6.2 虚拟轴 070
3.6.3 手机触摸. 071
实例:虚拟轴的使用 072
3.7 综合案例:爆破人073
3.7.1 游戏描述 074
3.7.2 项目准备 074
3.7.3 角色控制 074
3.7.4 放置炸弹 075
3.7.5 安排敌人 076
3.7.6 释放炸弹 077
3.7.7 摄像机跟随 077
第4章 游戏场景 079
4.1 场景灯光 080
4.1.1 巧用各式灯光 080
4.1.2 光照烘焙 081
操作演示:制作游戏夜晚场景 082
4.2 场景摄像机084
4.2.1 选择合适的摄像机 084
4.2.2 透视摄像机与正交摄像机 084
4.2.3 摄像机的显示设置 085
技术专题:摄像机深度可以呈现的效果 085
技术专题:目标纹理的使用 086
4.3 多媒体应用086
4.3.1 为角色添加耳朵 086
4.3.2 为场景添加音频源 086
4.3.3 通过脚本控制音频效果 087
实例:控制音频的播放和暂停 087
4.3.4 完成视频的播放 088
实例:播放电视画面 089
4.4 玩家角色控制090
4.4.1 角色控制器 090
4.4.2 通过脚本控制角色移动 090
技术专题:判断角色控制器是否位于地面 091
4.5 综合案例:寻宝游戏 091
4.5.1 游戏描述 091
4.5.2 项目准备 092
4.5.3 播放背景音乐 092
4.5.4 创建金币特效 092
4.5.5 编写宝箱脚本 093
第5章 物理系统 095
5.1 给物体添加重力 096
5.1.1 重力与刚体 096
5.1.2 刚体类常用的属性方法 096
技术专题:刚体休眠原理 097
操作演示:通过刚体控制球体运动 097
5.2 给物理世界添加碰撞 098
5.2.1 墙体的碰撞 098
5.2.2 球体碰撞器 099
5.2.3 胶囊碰撞器 099
5.2.4 地形碰撞器 099
5.2.5 网格碰撞器 100
操作演示:制作简易赛车 100
5.3 物理关节与材质 101
5.3.1 铰链关节 102
操作演示:通过铰链关节控制门的转动 102
5.3.2 弹簧关节 103
5.3.3 固定关节 104
5.3.4 物理材质 104
5.4 碰撞与触发检测 105
5.4.1 碰撞检测 105
5.4.2 触发检测 105
实例:逃脱游戏 106
5.5 可以碰撞的射线 108
5.5.1 射线碰撞检测 108
5.5.2 射线多碰撞检测 108
技术专题:射线与图层的碰撞 108
实例:点亮和熄灭蜡烛 109
5.6 综合案例:飞船大战110
5.6.1 游戏描述 111
5.6.2 导入玩家飞船 111
5.6.3 移动飞船 112
5.6.4 天空环境 112
5.6.5 导入敌人飞船 113
5.6.6 生成敌机 114
5.6.7 添加玩家攻击 114
第6章 粒子系统 117
6.1 粒子系统的使用 118
6.1.1 添加粒子系统 118
6.1.2 粒子系统的基本属性 118
6.2 粒子的效果设置 119
6.2.1 粒子发射器 119
6.2.2 发射器形状 119
6.2.3 粒子渲染效果 120
6.2.4 粒子速度 120
6.2.5 粒子颜色、大小与旋转 120
技术专题:粒子的渐变调节 121
技术专题:粒子的形态调节 121
实例:制作烟花效果 122
6.2.6 其他功能模块 123
实例:制作火焰雨技能效果 123
6.3 线条效果 126
6.3.1 线段渲染器 126
操作演示:使用脚本绘制动态线条 127
实例:模拟画图 128
6.3.2 拖尾渲染器 129
操作演示:使用脚本制作拖尾旋转效果 130
6.4 综合案例:魔法大战 131
6.4.1 游戏描述 131
6.4.2 创建项目 132
6.4.3 角色控制 132
6.4.4 编写魔法脚本 133
6.4.5 敌人孵化点 133
6.4.6 编写敌人脚本 134
第7章 动画系统 135
7.1 动画 136
7.1.1 动画组件 136
7.1.2 通过属性制作动画 137
技术专题:添加关键帧的另外3种方式 137
7.1.3 通过动画曲线控制平滑效果 137
技术专题:动画曲线的操作 138
7.1.4 执行一个帧事件 138
操作演示:制作门的开关动画 138
7.2 动画器 140
7.2.1 动画器组件 140
7.2.2 动画控制器 141
7.2.3 使用脚本切换动画 142
操作演示:使用脚本控制跑步动画 143
7.2.4 动画剪辑常用属性 145
7.2.5 编辑动画曲线 145
7.2.6 Animator帧事件 146
7.2.7 混合动画 147
7.2.8 动画层 148
技术专题:状态机的嵌套 148
7.2.9 Avatar遮罩 149
实例:播放混合动画 149
7.2.10 反向动力学 151
实例:动作游戏动画的切换 153
7.3 综合案例:潜入游戏 157
7.3.1 游戏描述 158
7.3.2 创建项目 158
7.3.3 制作角色动画 159
7.3.4 添加敌人 162
7.3.5 添加终点 164
第8章 导航系统 165
8.1 导航网格区域 166
8.1.1 生成导航网格 166
技术专题:导航静态设置 166
8.1.2 导航烘焙属性 166
8.2 导航代理 167
8.2.1 导航网格代理 167
8.2.2 添加障碍物 168
技术专题:障碍物的网格切割 169
操作演示:躲避障碍物 169
8.3 设置导航网格链接 171
8.3.1 代理角色的掉落高度与跳跃距离 171
8.3.2 导航网格链接 172
8.4 设置导航区域 173
8.4.1 设置模拟区域 173
8.4.2 设置区域成本 173
操作演示:河流导航区域 174
实例:穿越斑马线 175
8.5 综合案例:塔防游戏 178
8.5.1 游戏描述 178
8.5.2 创建炮台和地板 179
8.5.3 设置敌人进攻路线 179
8.5.4 创建敌人孵化器 180
8.5.5 创建炮弹 181
8.5.6 设置炮台 182
8.5.7 完善场景 183
第9章 游戏界面系统 185
9.1 了解UI基础控件 186
9.1.1 创建一个画布 186
9.1.2 控制UI控件的位置布局 187
操作演示:界面自适应布局 188
9.2 常用UI控件 190
9.2.1 图像 190
技术专题:制作九宫格图片 191
9.2.2 各类文本 192
技术专题:增加文本效果 192
9.2.3 按钮 193
9.2.4 文本框 193
9.2.5 选项 194
技术专题:制作复选框 194
9.2.6 下拉列表框 194
技术专题:用脚本设置球类运动项目 195
9.2.7 滚动视图 195
技术专题:制作滚动视图 196
9.2.8 滑动条 196
9.2.9 面板 196
实例:游戏主界面的应用 197
9.3 常用UI组件 198
9.3.1 遮罩组件 198
9.3.2 内容尺寸适应器 199
9.3.3 垂直和水平布局组 199
9.3.4 网格布局组 199
技术专题:以网格方式平铺图像 200
实例:背包界面的应用 200
9.4 综合案例:对话游戏 202
9.4.1 游戏描述 203
9.4.2 导入资源 203
9.4.3 对话界面 203
9.4.4 对话脚本 204
9.4.5 切换人物及背景 205
第10章 2D游戏开发 207
10.1 制作2D游戏 208
10.1.1 创建2D项目 208
10.1.2 创建精灵 208
10.2 瓦片地图 209
10.2.1 创建瓦片地图 209
技术专题:切片的3种类型 209
10.2.2 绘制瓦片地图 211
操作演示:绘制花园 211
10.3 2D物理与动画 213
10.3.1 精灵刚体与碰撞 213
技术专题:放大游戏物体后如何不失真 213
技术专题:冻结角色旋转 214
10.3.2 瓦片地图碰撞器 214
10.3.3 2D动画 215
实例:跳一跳 216
10.4 综合案例:小岛历险记 218
10.4.1 游戏描述 219
10.4.2 冒险小岛 219
10.4.3 添加角色 221
10.4.4 吃果实得分 224
第11章 游戏中的数据与网络 227
11.1 常用数据格式 228
11.1.1 轻量数据格式JSON 228
11.1.2 可扩展标记语言XML 229
11.1.3 CSV与Excel 230
实例:制作物品数据 231
11.1.4 SQLite 232
实例:操作数据库 233
11.2 多线程 234
11.2.1 多线程的使用 234
11.2.2 协程的使用 234
11.3 网络请求的使用 236
11.3.1 网络请求 236
11.3.2 搭建简易服务器 236
11.3.3 网络请求的基本使用方法 236
11.3.4 Socket与TCP/IP 237
实例:Socket通信 238
11.4 综合案例:登录请求 239
11.4.1 项目描述 239
11.4.2 搭建服务器 240
11.4.3 添加登录UI控件 240
11.4.4 创建登录界面 240
11.4.5 解析登录数据 241
第12章 使用设计模式完善代码 243
12.1 代码的状态 244
12.1.1 理解状态模式 244
12.1.2 非状态模式代码示例 244
实例:状态模式的代码实现 244
12.2 把复杂的代码封装起来 245
12.2.1 理解外观模式 246
12.2.2 非外观模式代码示例 246
实例:外观模式的代码实现 246
12.3 单一的对象 247
12.3.1 理解单例模式 247
新印象Unity
全新南京
¥ 67.50
新印象Unity
全新南京
¥ 67.51
新印象Unity 2020游戏开发基础与实战
全新广州
¥ 55.90
新印象Unity 2020游戏开发基础与实战
全新广州
¥ 55.86
新印象Unity 2020游戏开发基础与实战
全新广州
¥ 55.92
新印象Unity 2020游戏开发基础与实战
全新广州
¥ 79.61
新印象 Unity 2020游戏开发基础与实战
全新南昌
¥ 69.96
新印象Unity2020游戏开发基础与实战
全新北京
¥ 84.37
新印象Unity 2020游戏开发基础与实战
全新广州
¥ 55.89
新印象Unity 2020游戏开发基础与实战(
全新北京
¥ 61.69
— 没有更多了 —
以下为对购买帮助不大的评价