×
超值优惠券
¥50
100可用 有效期2天

全场图书通用(淘书团除外)

关闭
暂无评论
图文详情
  • ISBN:9787302593768
  • 装帧:一般胶版纸
  • 册数:暂无
  • 重量:暂无
  • 开本:其他
  • 页数:419
  • 出版时间:2021-12-01
  • 条形码:9787302593768 ; 978-7-302-59376-8

本书特色

本书面向没有接触过Unity游戏开发的初学者。读者可以通过本书掌握Unity游戏开发的常用技术,并且能参照“狗狗打怪”示例游戏制作出自己的作品。本书配套示例源码,作者提供技术支持和答疑服务。

内容简介

本书详细讲解Unity 2020的用法,并逐一说明Unity的主要功能,让读者对Unity游戏开发有一个整体认识,同时通过讲解一个简单的狗狗打怪游戏场景的相关实现技术,使读者掌握Unity制作游戏产品的方法,以快速进入Unity游戏开发之门。 本书共分16章,内容包括Unity 2020的安装、理解Unity的世界、Unity的常用界面、Unity项目从新建到生成、Unity脚本基础、Unity常用基础功能、Unity开发简单框架及常用技巧、狗狗打怪游戏结构和设置、指针切换及玩家移动攻击、敌人攻击、角色状态和伤害计算、场景传送和数据存取、狗狗打怪菜单场景。 本书适合Unity游戏开发初学者阅读,也适合作为高等院校、中职学校和培训机构计算机游戏开发相关专业师生的教学参考书。

目录

第1章 使用Unity Hub安装Unity 1

1.1 Unity Hub的下载 1

1.2 Unity Hub的安装 2

1.3 Unity Hub的使用 3

1.3.1 安装Unity 2020 3

1.3.2 添加模块和卸载Unity 6

1.3.3 激活许可证 6

1.3.4 Unity项目操作 7

1.4 脚本编辑器和界面语言设置 10

1.5 提示和总结 11

第2章 生成应用程序 12

2.1 安装对应平台的模块 12

2.2 窗口设置 13

2.3 玩家设置 15

2.4 生成Windows程序 17

2.5 生成网页应用 18

2.6 生成安卓应用 19

2.6.1 JDK和Android SDK 19

2.6.2 玩家设置 20

2.6.3 生成安卓应用 21

2.7 生成iOS应用 22

2.7.1 玩家设置 22

2.7.2 生成iOS应用 23

2.8 提示和总结 24

第3章 理解Unity的世界 25

3.1 虚拟的三维世界 25

3.1.1 游戏对象和Transform 26

3.1.2 游戏对象的层级结构 26

3.1.3 组件决定游戏对象 27

3.1.4 场景和摄像机 27

3.1.5 资源 27

3.2 Unity项目的结构 27

3.3 Unity的坐标 28

3.4 Unity项目目录说明 30

3.5 关于翻译 31

3.6 关于Unity的学习资源 32

3.7 提示和总结 33

第4章 Unity的常用界面 34

4.1 共有操作 35

4.2 项目窗口 36

4.2.1 菜单 36

4.2.2 基本操作 37

4.2.3 界面调整 37

4.2.4 搜索 37

4.3 层级窗口 39

4.3.1 菜单 39

4.3.2 基本操作 40

4.3.3 联动内容 41

4.4 场景视图 43

4.4.1 添加操作 44

4.4.2 视角操作(视图导航) 45

4.4.3 游戏对象操作 46

4.4.4 其他辅助按钮和开关 49

4.5 检查器窗口 50

4.5.1 菜单 50

4.5.2 游戏对象操作 52

4.5.3 组件操作 53

4.5.4 资源的标签 54

4.5.5 其他功能 54

4.6 游戏视图 55

4.6.1 常用内容 55

4.6.2 其他按钮 56

4.7 控制台窗口 57

4.7.1 基本操作 57

4.7.2 工具栏 57

4.8 资源商城 58

4.9 包管理器 60

4.10 菜单及其他常用操作 61

4.11 提示和总结 62

第5章 从新建到生成 63

5.1 新建到生成过程描述 64

5.1.1 新建项目 64

5.1.2 资源和插件的导入及设置 64

5.1.3 场景搭建 64

5.1.4 特效、动画的制作 65

5.1.5 程序逻辑开发 65

5.1.6 调试和生成 65

5.2 简单的例子 65

5.2.1 新建项目 65

5.2.2 目录设置,添加和导入资源 66

5.2.3 场景搭建 68

5.2.4 效果添加设置 75

5.2.5 添加UI并设置逻辑 77

5.2.6 生成应用 80

5.3 提示和总结 81

第6章 Unity脚本的基础内容(上) 82

6.1 C#基础概述 82

6.2 Unity 3D的内置数据类型 83

6.3 MonoBehaviour 84

6.3.1 脚本组件 84

6.3.2 特殊赋值方式 84

6.3.3 Unity基础事件 86

6.4 Debug类 89

6.5 游戏对象的基本操作 90

6.5.1 获取指定游戏对象 90

6.5.2 其他操作 95

6.6 游戏对象位置的旋转和缩放 98

6.6.1 获取并设置坐标 99

6.6.2 获取并设置旋转 99

6.6.3 获取并设置缩放 100

6.7 Time 101

6.7.1 Time的3个常用属性 101

6.7.2 移动 101

6.7.3 旋转 103

6.7.4 缩放 104

6.8 组件获取和基本操作 105

6.8.1 获取指定组件 105

6.8.2 组件的基本操作 107

6.9 提示和练习 108

第7章 Unity脚本的基础内容(下) 110

7.1 应用退出和场景控制 110

7.1.1 应用退出 110

7.1.2 场景加载 110

7.1.3 DontDestroyOnLoad和单实例 112

7.2 协程和重复 113

7.2.1 协程 113

7.2.2 延时调用 115

7.2.3 重复调用 115

7.3 实例化 116

7.3.1 基本用法 116

7.3.2 传入类型 117

7.3.3 其他 117

7.4 PlayerPrefs保存获取数据 117

7.5 ScriptableObject 118

7.5.1 新建 119

7.5.2 使用 120

7.5.3 其他 121

7.6 调用其他组件上的方法 123

7.6.1 SendMessage 123

7.6.2 获取组件调用 125

7.7 Unity中与计算有关的内容 126

7.7.1 随机数 126

7.7.2 Mathf类 126

7.7.3 向量计算 127

7.8 其他 127

7.8.1 获取目录 127

7.8.2 平台判断 127

7.8.3 JsonUtility 128

7.8.4 注解 128

7.8.5 Gizmos 129

7.9 脚本常见错误 130

7.10 提示总结和练习 132

第8章 Unity常用基础功能(上) 135

8.1 常用资源导入后的设置 136

8.1.1 图片资源设置 137

8.1.2 模型资源设置 137

8.1.3 音频资源设置 138

8.1.4 视频资源设置 139

8.2 预制件 139

8.2.1 生成预制件 140

8.2.2 预制件的编辑 140

8.2.3 拆解预制件和生成预制件变体 142

8.2.4 预制件的编程 142

8.3 摄像机 143

8.3.1 投影 144

8.3.2 剪裁平面与清除标识 145

8.3.3 剔除遮罩 145

8.3.4 深度和视口矩形 146

8.3.5 其他 147

8.4 Unity UI 149

8.4.1 RectTransform 150

8.4.2 RectTransform的程序控制 153

8.4.3 画布 158

8.4.4 文本和图像 163

8.4.5 交互游戏对象 174

8.4.6 自动布局相关组件 183

8.4.7 事件响应 194

8.5 音频播放 205

8.5.1 音频剪辑 205

8.5.2 音频源 206

8.5.3 音频监听器 206

8.5.4 音频播放的程序控制 207

8.6 视频播放 208

8.6.1 视频剪辑 209

8.6.2 视频播放器 209

8.6.3 播放视频的几种方法 210

8.6.4 视频播放的程序控制 217

8.7 提示总结和小练习 219

第9章 Unity常用基础功能(下) 221

9.1 输入 221

9.1.1 键盘按键输入 221

9.1.2 鼠标输入 222

9.1.3 触屏输入 224

9.1.4 输入管理器 225

9.1.5 单击物体 230

9.1.6 UI击穿 237

9.2 物理系统 239

9.2.1 刚体组件 239

9.2.2 碰撞器组件 245

9.2.3 关节和物理材质 249

9.2.4 其他 252

9.3 动画 254

9.3.1 动画剪辑 255

9.3.2 使用动画窗口制作动画剪辑 261

9.3.3 动画剪辑中的事件 269

9.3.4 动画器控制器 271

9.3.5 动画组件和动画的程序控制 287

9.4 导航寻路 288

9.4.1 导航网格资源 289

9.4.2 导航网络代理组件 292

9.4.3 导航网络代理的程序控制 293

9.4.4 分离网格链接组件 294

9.4.5 导航网格障碍物组件 296

9.5 拖尾和线 297

9.5.1 拖尾 297

9.5.2 线 299

9.5.3 宽度设置 302

9.5.4 颜色设置 303

9.5.5 材质设置 304

9.5.6 其他共有属性 305

9.6 光照组件和粒子组件 306

9.6.1 光照组件 306

9.6.2 粒子系统组件 307

9.7 提示总结和小练习 309

第10章 Unity开发简单框架及常用技巧 310

10.1 多个Manager的简单框架 310

10.1.1 演化过程 310

10.1.2 多个Manager框架的说明 311

10.2 ScriptableObject的使用 312

10.3 AI的简单实现 313

第11章 狗狗打怪项目结构和设置 315

11.1 项目总体结构 315

11.2 项目基本设置 316

第12章 指针切换及玩家移动攻击 325

12.1 鼠标指针切换 325

12.1.1 场景设置 325

12.1.2 添加并设置MouseManager脚本 330

12.2 玩家单击移动 333

12.2.1 导航区域烘焙 334

12.2.2 玩家游戏对象设置 337

12.2.3 使用MouseManager修改脚本 340

12.2.4 使用PlayerController编辑脚本 341

12.2.5 运行测试 342

12.3 玩家动画制作和移动匹配 343

12.3.1 选取动作 343

12.3.2 添加动作控制器 345

12.3.3 添加移动用的混合树 345

12.3.4 添加攻击和死亡状态 346

12.3.5 修改PlayerController脚本 349

12.4 玩家攻击敌人 349

12.5 镜头设置 352

第13章 敌人攻击 355

13.1 动画动作准备 355

13.2 敌人预制件制作 357

13.3 EnemyController脚本编辑 360

13.3.1 基本的有限状态机 360

13.3.2 死亡和站桩状态 362

13.3.3 巡逻状态 363

13.3.4 追击状态 365

第14章 角色状态和伤害计算 368

14.1 角色状态 368

14.2 伤害计算 373

14.2.1 修改脚本添加伤害计算 374

14.2.2 添加动作事件 376

14.2.3 运行测试 377

14.3 等级升级 378

14.4 敌人血量显示 382

14.4.1 添加血条预制件 383

14.4.2 脚本修改 385

14.4.3 设置敌人 387

14.5 玩家血量经验值显示 389

14.5.1 设置玩家血量界面 390

14.5.2 添加、编辑GameManager脚本 393

14.5.3 修改PlayerController脚本 394

14.5.4 添加、编辑PlayerHealthUI脚本 395

第15章 场景传送和数据存取 397

15.1 当前场景传送 397

15.1.1 添加传送目标点脚本 398

15.1.2 添加传送起始点脚本 398

15.1.3 传送点预制件设置 399

15.1.4 添加、编写SceneManager脚本 401

15.2 玩家数据的保存和读取 404

15.3 不同场景传送 407

15.3.1 添加主场景的传送点 407

15.3.2 设置预制件 407

15.3.3 另一个场景的设置 408

15.3.4 可用场景设置 411

15.3.5 脚本修改 411

第16章 狗狗打怪菜单场景 414

展开全部

作者简介

吴雁涛,2000年毕业于西北工业大学,从事计算机软件开发相关工作,包括Web前端、Web后端、Untiy 3D开发等。著有《Unity 3D平台AR与VR开发快速上手》《Unity 2018 AR与VR开发快速上手》《Unity 3D平台AR快速开发上手—基于EasyAR 4.0》。 叶东海,2012年毕业于云南大学,从事网络安全和信息化建设与管理工作,研究数据挖掘和AR应用开发,有7年的教学工作经验,指导多项人工智能竞赛和创新创业项目。著有《数据库系统应用》《Unity 3D平台AR快速开发上手—基于EasyAR 4.0》。 赵杰,2003年毕业于云南大学软件工程专业,硕士,曾负责软件工程专业、网络工程专业和数字媒体专业本科生创新创业指导工作。有15年的教学工作经验,指导过多项大学生创新创业项目。著有《Unity 3D平台AR快速开发上手——基于EasyAR 4.0》。

预估到手价 ×

预估到手价是按参与促销活动、以最优惠的购买方案计算出的价格(不含优惠券部分),仅供参考,未必等同于实际到手价。

确定
快速
导航