欢迎光临
免费的PDF电子书下载网站

Unity VR 虚拟现实完全自学教程 PDF下载

编辑推荐

VR行业目前处于初级发展阶段,但在未来将会蓬勃发展,所以当前是进行技术知识储备的关键时期。纵观整个行业的发展历程,当前的硬件设备水平已经有了长足的进步,分辨率更高的屏幕、视野更加广阔的头部显示器、携带更加方便的设备,未来的5G与人工智能技术也将会给VR行业带来前所未有的发展机遇。

内容简介

本书是 VR 自学爱好者的一本入门书,全书共 16 章,全面讲述了在制作 VR 应用程序的过程中所必备的软/硬件知识。硬件层面以 HTC VIVE 为主要硬件平台,同时介绍了两款配合其使用的外部设备—— VIVE 追踪器和 Leap Motion;软件层面以制作 VR 应用程序的核心工作流程为主线,以 Unity 为游戏引擎,从 VR 交互原则、材质、UI、编程开发、调试优化等方面逐步展开介绍各工作环节的主要内容。同时,本书辅以丰富的案例项目,重点介绍了 SteamVR、InteractionSystem、VRTK 等必备插件在实际项目中的使用方法,帮助读者快速上手制作属于自己的 VR 应用程序。

作者简介

邵伟,Unity 价值专家(UVP),公众号“XR技术研习社”(ID:XRStudy)主理人,现居山东省淄博市,毕业于山东理工大学。淄博木子信息科技有限公司创始人,蛮牛教育特聘高级讲师,录制了“HTC VIVE房产项目实战教程”“HTC VIVE开发实例教程”“VR写实材质技术实例教程”“Substance Painter 2018基础实例教程”等视频课程,累计录制视频时长超过3000分钟,线上及线下培训学员总计超2000人,目前专注于VR/AR技术分享工作。

Unity VR 虚拟现实完全自学教程

目录

第 1 章 VR 行业概述  /1

1.1 VR 介绍  /1

1.2 VR 技术应用案例 /1

1.3 VR 技术当前面临的挑战 / 5

1.3.1 硬件价格 / 5

1.3.2 运算及显示能力 /5

1.3.3 交互 / 5

1.3.4 移动性 /6

1.3.5 内容 / 7

1.3.6 小结 / 7

 

第 2 章 Unity VR 概述 / 8

2.1 Unity VR / 8

2.1.1 图形渲染 /8

2.1.2 真实物理引擎 / 9

2.1.3 多 VR 平台原生支持 /9

2.1.4 丰富的资源 /10

2.1.5 对开发者友好 /10

2.1.6 不断更新的 Unity 版本 / 11

2.2 使用 C#脚本进行 VR 交互开发 /12

 

第 3 章 当前主流 VR 硬件 / 13

3.1 HTC VIVE / 13

3.2 Oculus Rift / 13

3.3 Gear VR / 14

3.4 Cardboard /14

3.5 Daydream 平台  15

3.6 逐渐崛起的 VR 一体机 / 16

3.6.1 Oculus Go 和小米 VR 一体机 /17

3.6.2 HTC VIVE Focus /18

3.7 未来展望 /18

 

第 4 章 VR 应用程序开发工作流程 /20

4.1 资源准备 /20

4.2 模型优化及重拓扑 /23

4.3 展 UV 的过程 / 24

4.4 材质贴图制作 /25

4.5 将资源导入 Unity / 25

4.6 导入开发工具包 /26

4.7 场景搭建 /26

4.8 设置光照环境 /27

4.9 交互开发  /28

4.10 测试优化 / 28

4.11 发布应用程序 / 28

4.12 常用开发工具 /29

 

第 5 章 VR 交互设计原则 / 36

5.1 设计必要的新手引导 /36

5.2 使用十字线(准星)/36

5.3 避免界面深度引起的疲劳感 /37

5.4 使用恒定的速度 /37

5.5 保持用户在地面上 /38

5.6 保持头部的跟踪 /38

5.7 用光来引导用户的注意力 /39

5.8 借助比例 /39

5.9 使用空间音频 /40

5.10 充分使用反馈 /40

 

第 6 章 HTC VIVE 硬件 / 41

6.1 简介 /41

6.2 产品特点 /41

6.3 VIVE PRO / 43

6.4 HTC VIVE 硬件拆解结构 / 44

6.4.1 头显  /44

6.4.2 控制器 /45

6.5 HTC VIVE 控制器按键名称 / 46

6.6 HTC VIVE 定位原理/ 47

6.7 Inside-Out 与 Out-Inside 位置跟踪技术 / 47

6.7.1 Outside-In 跟踪技术 /48

6.7.2 Inside-Out 跟踪技术 / 48

6.8 HTC VIVE 的安装 / 49

 

第 7 章 VR 中的 UI ./51

7.1 概述 /51

7.2 将 UI 容器转换为世界空间坐标 / 52

7.3 VR 中的 UI 交互 /53

 

第 8 章 Unity VR 写实材质 . 55

8.1 Unity 材质基础 / 55

8.2 基于物理的渲染理论 /56

8.3 PBR 材质的优势 / 57

8.3.1 高品质写实级别材质表现 /58

8.3.2 为实时渲染而生 / 58

8.3.3 标准的材质制作流程 /59

8.4 PBR 材质主要贴图类型 /59

8.4.1 颜色贴图(Albedo/Basecolor Map)/59

8.4.2 金属贴图(Metallic Map) /60

8.4.3 光滑度贴图(Roughness Map) /60

8.5 PBR 材质制作软件 / 61

8.5.1 Substance Designer  /61

8.5.2 Substance Painter /65

8.5.3 Quixel Suite  /66

8.5.4 Marmoset Toolbag /66

8.6 制作 PBR 椅子材质 /67

8.6.1 在 Substance Painter 中制作贴图  /67

8.6.2 导出贴图到 Unity /74

8.7 Substance in Unity 的使用 / 76

 

第 9 章 SteamVR  /81

9.1 SteamVR 简介 /81

9.1.1 SteamVR Runtime  /81

9.1.2 SteamVR Plugin  / 81

9.1.3 获取控制器引用及按键输入 /83

9.2 使用SteamVR Plugin实现与物体的交互  /84

9.3 InteractionSystem  /89

9.3.1 InteractionSystem 核心模块 / 89

9.3.2 使用 InteractionSystem 实现传送 / 91

9.3.3 使用 InteractionSystem 实现与物体的交互 / 93

9.3.4 使用 InteractionSystem 实现与 UI 的交互 /95

9.4 需要注意的问题 . 96

 

第 10 章 使用 VRTK 进行交互开发  /99

10.1 VRTK 简介 /99

10.1.1 什么是 VRTK  / 99

10.1.2 VRTK 能做什么 /99

10.1.3 为什么选择 VRTK  /100

10.1.4 未来版本 103

10.2 SteamVR Plugin、InteractionSystem 与 VRTK 的关系 /103

10.3 配置 VRTK /103

10.3.1 一般配置过程 /104

10.3.2 快速配置 VRTK/108

10.4 VRTK 中的指针 / 109

10.4.1 指针 /109

10.4.2 指针渲染器 /113

10.5 在 VRTK 中实现传送  /115

10.5.1 VRTK 中的传送类型 /115

10.5.2 限定传送区域 /118

10.5.3 在 VR 场景中实现传送 /119

10.6 使用 VRTK 实现与物体的交互 /121

10.6.1 概述 / 121

10.6.2 配置方法 / 122

10.6.3 VRTK 的抓取机制 / 127

10.7 VRTK 中的控制器高亮和振动 /129

10.7.1 控制器高亮 /129

10.7.2 控制器振动 /131

10.8 VRTK 中与 UI 的交互 / 132

10.9 实例:开枪射击效果/ 134

10.10 实例:攀爬效果 / 140

10.11 实例:实现释放自动吸附功能 / 143

 

第 11 章 将基于 PC 平台的应用移植到 VR 平台 / 148

11.1 项目移植分析 /148

11.2 初始化 VR 交互 /149

11.3 Player 的移植 / 150

11.4 设置道具为可交互对象 / 152

11.5 实现控制器与道具的交互逻辑  /154

11.6 修改 UI 渲染模式为 World Space / 156

11.7 玩家伤害闪屏效果 /157

11.8 根据报错信息调整代码 /158

11.9 游戏结束及重新开始 / 159

 

第 12 章 Leap Motion for VR /162

12.1 概述 /162

12.2 硬件准备 /163

12.3 软件环境 /164

12.4 Leap Motion VR 初始开发环境 /164

12.5 替换 Leap Motion 在 VR 环境中的手部模型 /165

X Unity VR 虚拟现实完全自学教程

12.6 实现与 3D 物体的交互 / 167

12.7 实例:使用 Leap Motion 实现枪械的组装 /171

 

第 13 章 VIVE Tracker 的使用 / 175

13.1 外观结构  /175

13.2 使用场景  /176

13.3 初次使用 Tracker  /177

13.4 使用 Tracker 作为控制器 / 178

13.5 使用 Tracker 与现实世界物体进行绑定  179

13.6 小结  /181

 

第 14 章 Unity VR 游戏案例——《水果忍者 VR》原型开发  /182

14.1 项目简介 /182

14.2 初始化项目 / 182

14.3 配置武士刀 / 183

14.4 编写水果生成逻辑 /185

14.5 实现切割水果的效果 /187

14.6 制作分数和游戏结束 UI  /189

14.7 编写计分、计时和游戏结束等逻辑 / 190

 

第 15 章 Unity VR 案例—— Tilt Brush 原型开发 / 194

15.1 项目分析 /194

15.2 初始化项目并编写脚本 /195

15.3 实现修改笔刷颜色功能 /197

15.4 扩展内容:将绘制交互修改为 VRTK 版本 / 201

15.5 异常处理 /202

 

第16 章 Unity VR 性能优化工具和方法 / 204

16.1 Unity Profiler / 204

16.2 Memory Profiler / 205

16.3 Frame Debugger / 205

16.4 优化原则和措施 /206

16.4.1 LOD 技术 /206

16.4.2 较少 Draw Call 数量 / 207

16.4.3 使用单通道立体渲染 / 208

16.4.4 使用 The Lab Renderer / 209

16.4.5 小结 / 210

 

附录A  XR 技术词汇解释/ 211

附录B  Unity 编辑器基础小贴士/ 217

Unity VR 虚拟现实完全自学教程 pdf下载声明

本pdf资料下载仅供个人学习和研究使用,不能用于商业用途,请在下载后24小时内删除。如果喜欢,请购买正版

pdf下载地址

版权归出版社和作者所有,下载链接已删除。如果喜欢,请购买正版!

链接地址:Unity VR 虚拟现实完全自学教程