本书在阐述虚拟现实技术必要理论知识的基础上,重点介绍了VRP虚拟现实技术平台、Unity游戏引擎和Web3D技术及其案例讲解,并着重分析了增强现实技术及其应用。本书附有配套实验,使读者能够在较短的时间里由浅入深地了解、认识和掌握虚拟现实技术,并具备运用开发工具制作三维交互、效果逼真的虚拟现实场景的能力。本书可作为高等院校计算机及电子信息类专业、数字媒体技术和教育技术学专业学生的教材,也可作为从事虚拟现实技术的工程技术人员以及虚拟现实技术爱好者的参考书。
本书在编写过程中侧重于普及与应用的原则,在阐述虚拟现实技术必要理论知识的基础上,重点介绍增强现实技术及其案例分析,然后以几个代表性虚拟现实技术平台为例,开展虚拟现实技术平台介绍及案例讲解,并配之实验,帮助读者在较短的时间里由浅入深地了解、认识和掌握虚拟现实技术,培养读者运用开发工具制作三维交互、效果逼真的虚拟现实场景的能力。
本书内容首先从概述开始,然后介绍理论基础知识,最后是案例分析、开发工具讲解与制作,理论与实验同步进行。全书内容共7章,第1章为虚拟现实技术概述,由黄静编写;第2章为3D数学基础,由黄静编写;第3章为三维建模技术,由方桦编写;第4章为增强现实技术案例分析,由黄静在虚拟现实技术教学与项目开发的基础上总结整理编写;第5章为虚拟现实平台技术,由中视典公司培训部授权提供,黄静整理而成;第6章为Unity游戏引擎,由黄静主笔,张志稳提供了参考资料,黄秋颖提供了金币游戏案例;第7章为Web3D技术,由李玫和周鹏编写。15个配套实验包括三维建模制作、虚拟现实平台交互操作、游戏引擎技术制作开发、增强现实技术操作等,由黄静根据以往虚拟现实技术教学经验编写而成。全书由黄静统稿。
虚拟现实技术的重点是系统集成技术,这也是当今的热门新技术。本书是目前唯一一本附有配套实验的教材,让学生感到虚拟现实技术不再虚无缥缈、纸上谈兵,而是虚实结合、看得见摸得着的,大大激发了学生的兴趣。
感谢澳门科技大学资讯科技学院的梁延研助理教授,他与我共同开创了“虚拟现实技术”这门课程,并为本书提出了不少实验创意和想法。感谢张志稳、邱泽宇和薛丁丰提供的帮助。同时特别感谢澳门科技大学唐泽圣和齐东旭教授的帮助和支持。
在编写本书的过程中,我们借鉴了国内外许多专家、学者的观点,参考了许多相关教材、专著、网络资料,在此向有关作者一并表示衷心的感谢。
由于编者水平有限且时间仓促,本书难免有不足和错误之处,请各位专家、读者批评指正。
黄静2016年10月
前言
教学建议
第1章 虚拟现实技术概述 1
1.1 虚拟现实技术概念 1
1.2 虚拟现实技术分类 5
1.3 虚拟现实技术设备 7
1.4 虚拟现实技术应用与发展 14
1.5 本章小结 19
习题 19
第2章 3D数学基础 20
2.1 3D向量运算 20
2.2 矩阵运算规则 22
2.3 3D几何变换 25
2.3.1 三维基本几何变换 26
2.3.2 三维组合变换 30
2.4 三维观察与投影变换 32
2.4.1 三维观察流程 32
2.4.2 三维观察坐标系 32
2.4.3 从世界坐标系到观察坐标系的变换 33
2.4.4 投影变换 34
2.4.5 平行投影 35
2.4.6 透视投影 36
2.5 本章小结 38
习题 38
第3章 三维建模技术 39
3.1 三维建模工具简介 39
3.2 3DS Max的基础知识 40
3.3 基础建模 42
3.4 材质与贴图 53
3.5 灯光与摄影机 57
3.6 基础动画 61
3.7 贴图烘焙技术 64
3.8 综合实例——岭南民居 66
3.9 本章小结 75
习题 76
第4章 增强现实技术案例分析 77
4.1 虚拟现实眼镜 77
4.2 增强现实设备头盔 80
4.3 体感设备Kinect的增强现实技术应用 82
4.4 桌面电脑上的增强现实技术应用 88
4.5 移动平台上增强现实技术的3D画册实现 91
4.6 移动平台上增强现实技术的卡通老虎互动 102
4.7 本章小结 104
习题 104
第5章 虚拟现实平台技术 105
5.1 VRP简介 105
5.2 多通道环幕(立体)投影系统 105
5.3 虚拟现实编辑器 107
5.4 VRP的系统配置安装与设计流程 111
5.5 VRP项目制作技巧和标准流程 113
5.6 VRP界面设计 117
5.7 VRP材质编辑器 136
5.8 VRP-atx动画贴图 138
5.9 VRP相机设置 144
5.10 VRP脚本编辑器 156
5.11 VRP骨骼动画 161
5.12 VRP特效处理 172
5.13 VRP时间轴设置 173
5.14 VRP综合实例制作 175
5.15 本章小结 190
习题 190
第6章 Unity游戏引擎 191
6.1 Unity概述 191
6.2 编辑器的结构 191
6.3 游戏元素 196
6.4 Unity脚本 206
6.5 GUI游戏界面 210
6.6 物理引擎 217
6.7 输入控制 220
6.8 持久化数据 225
6.9 多媒体与网络 230
6.10 游戏实例 239
6.11 本章小结 264
习题 264
第7章 Web3D技术 265
7.1 Web3D技术简介与发展 265
7.1.1 Web3D技术的发展 265
7.1.2 国内Web3D应用现状 267
7.1.3 Web3D核心技术及其对比 267
7.1.4 Web3D的实现技术 269
7.1.5 Web3D技术的应用 270
7.2 Cult3D技术 273
7.2.1 Cult3D技术优点 274
7.2.2 Cult3D关键技术 274
7.2.3 Cult 3D应用工作流程 275
7.3 X3D技术 276
7.3.1 X3D技术基础 276
7.3.2 X3D的基本语言 277
7.3.3 X3D基本动画 281
7.3.4 小结 283
7.4 WebGL技术 283
7.5 HTML 5技术 287
7.6 Web3D技术综合实例 289
7.6.1 Cult3D技术应用实例 289
7.6.2 WebGL + HTML 5技术应用实例 291
7.7 本章小结 300
习题 301
实验一 VRP入门 302
实验二 VRP动画 308
实验三 VRP界面与相机 316
实验四 手机展示 323
实验五 VRP应用——励耘楼漫游系统 337
实验六 VRP导航与时间轴动画 348
实验七 简单的地形创建 353
实验八 Unity模型导入 360
实验九 Unity界面设计 365
实验十 Unity多媒体交互设计一 372
实验十一 Unity多媒体交互设计二 377
实验十二 Unity人物角色漫游 384
实验十三 小游戏设计一 394
实验十四 小游戏设计二 400
实验十五 基于Unity的Web车展系统 412
参考文献 421