虚拟现实交互设计(基于Unity引擎)(微课版)(第2版)

虚拟现实交互设计
分享 推荐 1 收藏 14 阅读 867
李永亮 (作者) 978-7-115-67805-8

关于本书的内容有任何问题,请联系 刘佳

1.优质国规教材改版
2.项目式写法
3.配套丰富的资源
本书可作为高等院校数字媒体、虚拟现实、游戏开发等相关专业的教材,可以作为Unity爱好者自学的学习资料,还可作为从事虚拟现实开发、游戏开发的工程技术人员学习和应用的参考书籍。

内容摘要

本书详细介绍虚拟现实应用开发工作中交互功能的实现技术。本书共6个项目,分别介绍Unity的用途、下载和安装方法,以及获取资源的途径;Unity项目开发流程;自然地形三维场景的创建;角色控制和道具拾取功能的实现;利用粒子特效和音效模拟真实效果;利用交互界面实现与角色互动的功能、角色动画的应用、角色之间行为交互功能的实现等技术内容。
本书采用项目驱动、结果导向的方式组织教学内容,采用大量的图片让操作步骤更加清晰直观,描述性知识以“必需”“够用”为度,过程性知识和策略性知识则有机融合在项目实现过程中。本书内容丰富,系统性和应用性强,融入了作者多年教学和实践的经验及体会,能够让读者快速掌握虚拟现实应用软件交互功能的实现技术。
本书既可作为职业院校虚拟现实应用技术专业及相关专业的教材,也可作为广大虚拟现实内容开发者自学的中级进阶教材,还可作为从事虚拟现实项目开发的工程技术人员的参考书。

目录

目 录
项目1 走进Unity的世界——安装和认识开发环境 1
1.1 项目概览 1
1.1.1 学习目标 1
1.1.2 项目需求 1
1.2 Unity的下载、安装和激活 1
1.2.1 相关知识:Unity可以做什么 2
1.2.2 Unity的下载 2
1.2.3 开发环境的安装 3
1.2.4 开发环境的激活 5
1.3 获取资源的途径 7
1.3.1 相关知识:什么是资源 8
1.3.2 从Unity的Asset Store获取
资源 8
1.3.3 直接从Unity资源包文件导入
资源 10
1.3.4 将自己创作的三维模型导出为
适用于Unity的FBX文件 11
1.3.5 测一测:从3ds Max导出适用于Unity的FBX文件 13
1.4 项目小结 14
1.5 课后习题 14
1.6 中英文对照表 15
项目2 星际冒险——通过一个小游戏认识Unity 16
2.1 项目概览 16
2.1.1 学习目标 16
2.1.2 项目需求 16
2.2 项目和场景的创建 17
2.2.1 相关知识:项目和场景的
概念 17
2.2.2 创建项目和场景 17
2.3 项目资源的导入和使用 22
2.3.1 资源的导入和管理 22
2.3.2 相关知识:游戏物体和组件的
概念 24
2.3.3 制作玩家控制的飞船 24
2.3.4 制作游戏场景的背景画面 28
2.3.5 调整游戏画面的预览宽高比 34
2.3.6 调整玩家的视角 34
2.3.7 制作障碍物对象 35
2.3.8 测一测:Unity常用基本概念和
操作 37
2.4 交互功能的实现 38
2.4.1 查看已经导入的脚本文件 38
2.4.2 背景画面的滚动效果 39
2.4.3 飞船的控制 41
2.4.4 陨石的随机旋转和平移 42
2.4.5 相关知识:预制体的概念及使用方法 44
2.4.6 陨石的随机生成 44
2.4.7 陨石的碰撞和回收 47
2.4.8 爆炸效果 54
2.4.9 删除场景中的陨石对象并保存
项目 55
2.5 项目小结 56
2.6 课后习题 57
2.7 项目拓展 57
2.8 学习成果及其评价 58
2.9 中英文对照表 58
项目3 湖光山色——自然地形三维场景的创建 60
3.1 项目概览 60
3.1.1 学习目标 60
3.1.2 项目需求 60
3.2 创建项目和场景 61
3.3 创建地形 61
3.3.1 创建地形对象及其对应的
文件 61
3.3.2 相关知识:“Terrain”组件及其
作用 61
3.3.3 设置地形大小规模 62
3.3.4 设置地形的基准高度 62
3.3.5 绘制地形 63
3.3.6 地形平滑 63
3.3.7 修整平地 63
3.4 美化地形 64
3.4.1 载入地形案例资源 64
3.4.2 地形贴图 65
3.4.3 植树 66
3.4.4 种草 67
3.4.5 相关知识:光源对象和“Light”组件 68
3.4.6 添加光源和阴影 69
3.5 添加静态物体和水面 69
3.5.1 创建基本几何体 69
3.5.2 添加外部模型 70
3.5.3 添加水面 71
3.6 实现漫游功能 73
3.6.1 添加第一人称控制器 73
3.6.2 添加碰撞检测功能 74
3.6.3 测一测:第一人称漫游功能 76
3.7 添加其他环境效果 77
3.7.1 更改天空盒 77
3.7.2 测一测:天空盒的使用 78
3.7.3 添加雾气效果 79
3.7.4 添加音效 79
3.8 项目小结 82
3.9 课后习题 82
3.10 项目拓展 83
3.11 学习成果及其评价 84
3.12 中英文对照表 84
项目4 坦克大战——角色控制和道具
拾取 86
4.1 项目概览 86
4.1.1 学习目标 86
4.1.2 项目需求 86
4.2 创建坦克并实现其移动控制 87
4.2.1 创建工程和场景并载入坦克
模型 87
4.2.2 为坦克对象添加新组件 88
4.2.3 相关知识:Unity C#脚本及其
基本结构 88
4.2.4 坦克移动和旋转控制功能的
实现 89
4.3 坦克炮塔的转动控制 94
4.3.1 调整坦克模型 94
4.3.2 相关知识:炮塔旋转功能的
实现原理(射线和层) 95
4.3.3 载入炮击位置和瞄准器对象 96
4.3.4 炮塔旋转功能的代码实现 97
4.3.5 设置可炮击对象层和玩家层 99
4.3.6 测一测:对象的朝向和分层 101
4.3.7 运行并测试炮塔转动功能 102
4.4 坦克的开炮控制 102
4.4.1 相关知识:开炮功能的实现原理(协程) 102
4.4.2 载入爆炸粒子特效 103
4.4.3 修改脚本“TurretTurn”的
代码 103
4.4.4 开火功能的代码实现 104
4.5 道具的创建和拾取 107
4.5.1 相关知识:游戏物体之间的交互(碰撞和触发) 107
4.5.2 测一测:碰撞和触发 108
4.5.3 道具游戏物体的创建 108
4.5.4 道具的拾取 110
4.6 项目小结 112
4.7 课后习题 113
4.8 项目拓展 114
4.9 学习成果及其评价 115
4.10 中英文对照表 116
项目5 消防演练——粒子系统和
音效 117
5.1 项目概览 117
5.1.1 学习目标 117
5.1.2 项目需求 118
5.2 创建工程和场景 118
5.3 游戏场景的设计 119
5.3.1 游戏场景模型的载入 119
5.3.2 音频资源的导入和报警声的
制作 121
5.4 制作火焰和烟雾效果 122
5.4.1 相关知识:粒子系统及“Particle System”组件 122
5.4.2 导入火焰和烟雾粒子特效 122
5.4.3 添加火焰音效 125
5.4.4 设计火势控制脚本 127


5.4.5 火焰音效控制和火势大小界面
显示 131
5.5 灭火功能的实现 140
5.5.1 导入灭火器相关资源 140
5.5.2 实现灭火器喷射功能 141
5.5.3 设计以灭火器为武器的第一人称角色控制器 142
5.5.4 相关知识:粒子碰撞 148
5.5.5 利用粒子碰撞实现灭火交互
功能 148
5.5.6 测一测:粒子碰撞实现灭火
交互功能 152
5.6 游戏管理功能的设计 153
5.6.1 相关知识:初步了解UI 153
5.6.2 游戏管理相关界面的设计 153
5.6.3 界面控制器的设计和实现 156
5.6.4 测一测:“Canvas”和
“Panel” 158
5.6.5 游戏控制器的设计和实现 159
5.6.6 游戏运行与验证 164
5.7 项目小结 164
5.8 课后习题 165
5.9 项目拓展 166
5.10 学习成果及其评价 166
5.11 中英文对照表 167
项目6 异星猎手——交互界面、角色
动画及战斗交互 168
6.1 项目概览 168
6.1.1 学习目标 168
6.1.2 项目需求 168
6.2 创建工程和场景 169
6.3 换装交互界面的设计和功能
实现 173


6.3.1 相关知识:常用UI对象及其
功能 173
6.3.2 交互界面的设计 175
6.3.3 探索游戏主角模型从而确定换装思路 180
6.3.4 设计换装功能脚本 181
6.3.5 将交互界面与换装功能关联 185
6.4 角色动作及角色控制的实现 188
6.4.1 相关知识:带骨骼动画的人物
角色模型 188
6.4.2 导入第三人称角色控制资源并
应用到游戏主角对象上 191
6.4.3 更新换装交互界面的设置 197
6.4.4 相关知识:控制角色动作变化的原理 199
6.4.5 测一测:Unity中的角色动画及其控制方法 202
6.5 游戏角色战斗功能的实现 203
6.5.1 添加摄像机跟随脚本并更新UI
设置 204
6.5.2 添加瞄准与开枪的人物动画 208
6.5.3 添加瞄准与开枪动作的脚本 216
6.5.4 测一测:IK的概念及作用 230
6.5.5 激光束及其击中效果的添加和
功能实现 230
6.5.6 更新UI设置、运行测试并调整
激光束参数 234
6.6 敌人角色的加入及其交互功能的
实现 235
6.6.1 导入敌人角色 236
6.6.2 相关知识:导航功能概览 236
6.6.3 导航功能的实现 237
6.6.4 测一测:导航功能及其实现 242
6.6.5 敌人被摧毁功能的实现 243
6.6.6 敌人自爆并对主角造成伤害的
实现 246
6.6.7 试运行并验证本节功能 257
6.7 游戏管理功能的设计 258
6.7.1 游戏规则 258
6.7.2 敌人出生点的设计 259
6.7.3 游戏管理器的设计 264
6.7.4 运行游戏验证功能 270
6.8 项目小结 270
6.9 课后习题 271
6.10 项目拓展 272
6.11 学习成果及其评价 273
6.12 中英文对照表 274

读者评论

赶紧抢沙发哦!

我要评论

作者介绍

Unity国际认证讲师;Unity国际认证开发者;开发作品《胆机组装实训虚拟仿真系统》参加2018年广东省职业院校信息化教学大赛获一等奖;指导学生参加2018-2019年度广东省职业院校学生专业技能大赛“虚拟现实(VR)设计与制作”赛项获一等奖;指导学生参加2018一带一路暨金砖国家技能发展与技术创新大赛虚拟现实(VR)产品设计与开发竞赛全国选拔赛获二等奖;长期讲授数字媒体设计与制作专业、数字媒体艺术设计专业课程《Unity脚本语言》和《虚拟交互设计》。

推荐用户

相关图书

人邮微信
本地服务
人邮微信
教师服务
二维码
读者服务
读者服务
返回顶部
返回顶部