虚拟现实技术培训讲义

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

9.6.1 VRML简介
➢ Appearance可以定义material(材质), texture(纹理)和textureTransform(纹理变 换)三种属性。Material节点紧跟在material字 段后面,其内容就是物体的材质属性。 emissiveColor 1 0 0表示球的表面材质反射 100%的红光,0%的绿光和0%的蓝光。
➢ Transform字段的值,例如转变或旋转,可以 由任何Shape节点或它的子节点所继承。
9.6.1场景交互
VRML2.0能够支持动态的、交互式的3D 场景。利用VRML2.0建立的场景,不仅 可以展示其中运动的物体,而且还可以 使用户跟这些物体进行交互。例如在某 个场景中,门可开着,电梯在运行,出 租车行驶着。更奇妙的是,用户可以将 门打开或关上,选择电梯的上下按钮, 或者招手叫出租车停下来。
第9章 虚拟现实技术
本章重点:本章重点在于掌握虚拟现实 的基本概念、特点及应用,并通过实例
了解虚拟场景的生成
第9章 虚拟现实技术
9.1 虚拟现实的基本概念 9.2 虚拟现实的主要研究内容 9.3 虚拟现实系统的基本组成 9.4 虚拟现实系统的特征 9.5 虚拟现实系统的分类 9.6 虚拟现实的应用实例与开发技术 9.7 本章小结
9.1 虚拟现实的基本概念
虚拟现实(Virtual Reality,VR),就是采 用计算机技术生成一个逼真的视觉、听觉、触 觉、嗅觉及味觉等虚拟的感观世界,用户可以 直接用人的技能和智慧对这个生成的虚拟实体 进行考察和操作。虚拟现实技术的应用前景非 常广阔。它开始于军事领域,在军事和航空航 天的模拟和训练中起到了非常重要的作用。另 外,虚拟现实技术在医疗、制造业、娱乐和教 育等方面的应用也具有很大的潜力。不久的将 来,它会得到广泛应用。
9.6.1 VRML简介
下面是一个VRML的简单例子,程序构造了一个半径为1个单位的被 照亮的三维红球。例sphere.wrl #VRML V2.0 utf8 Shape{ appearance Appearance{ material Material{ emissiveColor 1 0 0 } } geometry Sphere { radius 1 } }
9.6.2 一个VRML虚拟漫游系统的设计
➢ 物体造型 ➢ 碰撞检测 ➢ 场景集成
9.6.2 物体造型
例如电脑主机的设计主要是一个长方体,为了看起来真实,我们 为主机的前面贴上纹理图片,此图片在项目文件的picture目录下。 贴图的代码如下: Shape {
appearance Appearance { texture ImageTexture { url "..\picture\host.gif"
交互模式
为简化人机界面,人们提出了许多新方法,发明了许 多新设备,以及与虚拟现实有关的新技术。由此出现 了许多种交互模式。例如,特征识别单元、视觉显示 单元、触摸屏、光笔、游戏杆、拇指轮、压感笔、便 笺簿、数字化仪等都是与虚拟现实有关的设备和技术
9.4 虚拟现实系统的特征
无论是哪—种虚拟现实系统,都有沉浸、 交互和
Transform { center 0 0 0 translation 0 0 0 rotation 0 0 1 0 scale 1 1 1 scaleOrientation 0 0 1 0 children [ ]
}
9.6.1 线性变换
➢ VRML场景图包含许多群组节点以便定义一个 方便的等级来操纵场景。当然,也可以把 Transform和其他节点组成群组节点(例如, 在一个物体等级的内部某一层放置一个传感器, 用一个事件触发它,但同时又保留着操纵整个 组活动的能力)。
9.6 虚拟现实的应用实例与开发技术
➢ 9.6.1 VRML ➢ 9.6.2 一个VRML虚拟漫游系统的设计
9.6.1 VRML
➢ 1. VRML简介 ➢ 2. 线性变换 ➢ 3. 场景交互 ➢ 4. VRML节点
9.6.1 VRML简介
VRML(Virtual Reality Modeling Language) 即虚拟现实建模语言,它通过创建一个虚拟场景以达 到现实中的效果。VRML被广泛应用于Internet上创 建虚拟三维空间,利用VRML可以随意创建任何虚拟 的物体,像建筑物、城市、山脉、星体等对象。当 然也可以在虚拟空间中添加声音、动画,使之更加 生动,更接近现实,还可以具有与浏览者的交互性, 从而实现更加接近现实生活中的网上虚拟空间。
➢ 沉浸型虚拟现实系统 沉浸型虚拟现实系统是比较复杂的系统。使用 者必须头戴头盔、手带数据手套等传感跟踪装 置,才能与虚拟世界进行交互。
9.5 虚拟现实系统的分类
➢ 共享型虚拟现实系统 共享型虚拟现实系统是利用远程网络, 将异地的不同用户联结起来,共享一个 虚拟空间,多个用户通过网络对同一虚 拟世界进行观察和操作,达到协同工作 的目的。例如,异地的医生,可以通过 网络,对虚拟手术室中的病人进行外科 手术。
虚拟世界
它一般是一个包含三维模型或环境定义的数据 库。虚拟环境是由计算机生成的,通过视、听、 触觉等作用于用户,使之产生身临其境感觉的 交互式视景仿真。虚拟环境有多种形式,它可 能是某些物理环境(如建筑物、汽车、潜艇甚 至像太空仓这样的物体内部)的伪真实反映, 也可能是根本没有任何物理基础的某一跨国公 司的地理、层次网的三维数据库,甚至可以是 与股票交易有关的多维数据集
人与环境融合技术
➢ (1)高分辨率立体显示器 ➢ (2)方位跟踪系统 ➢ (3)手势跟踪系统 ➢ (4)触觉反馈系统: ➢ (5)声音定位与跟踪系统 ➢ (6)本体反馈
物体对象的仿真技术
➢ (1)几何仿真 ➢ (2)物理仿真 ➢ (3)行为仿真
9.3 虚拟现实系统的基本组成
虚拟现实系统由五大部分组成: 虚拟世界 虚拟现实软件 计算机 输入设备和输出设备
➢ geometry字段后的Sphere节点表示物体是一个 球体。radius 1 表示球体的半径是1个单位。
9.6.1 线性变换
在VRML中,Transform节点是一个基本结构,它是一个常见的群 组节点(Grouping node),可以作许多物体的容器。Transform 还提供了更强大的功能,在计算机图形中,无论是缩放比例、旋 转或是平移,“运动”总是和变换(Transformation)紧密相连 的。VRML2.0中,Transform节点将其定义的变换施加于物体。它 的各字段的缺省值定义如下:
9.6.1 VRML简介
➢ VRML同HTML语言一样,是一种ASCII的描述性语言, 可以用文本编辑器VRML编辑。用户可选用自己喜爱的 文本编辑器,如Windows下的NotePad等进行编辑由于 VRML将要在网络上跨平台传输,所以需要为它定义一 种文件格式。1995年,正式推出VRML1.0版本。1996 年,在对1.0版本进行重大改进的基础上推出了2.0版 本,其中添加了场景交互、多媒体支持、碰撞检测等 功能。1997年12月,VRML作为国际标准正式发布,并 于1998年1月获得ISO批准,通常称为VRML 97,它是 VRML2.0经编辑性修订和少量功能性调整后的结果。
9.6.1 VRML简介
程序说明如下: 每个VRML2.0文件必须以下面的语句作为开始: #VRML V2.0 utf8 “utf8”是国际标准组织确认的一个标准,在VRMห้องสมุดไป่ตู้文本节点中引导
语 言字符。以£或#开头的文本行是注释行,直到下一个回车符为止, 它将被浏览器解释所忽略。 Shape 是VRML的一个节点类型(Node),它有appearance和 geometry两个字段(Field),分别用于定义物体的外观属性(如材 质、纹理)和几何属性。 appearance字段后紧跟的Appearance也是VRML的一个节点,它的内 容就是该物体的外观属性。 就是当定义一个节点时,总是包含一个可视的有形的结果。
#exposedField
SFVec3f
构想性这三个基本特征。 ➢ 浸入性
是使使用者亲身体验虚拟环境真实直观 的视图,显示系统应直接受使用者的控 制,获得浸入虚拟环境的感觉。 ➢ 交互性
9.4 虚拟现实系统的特征
➢ 构想性 构想性是指在虚拟现实系统中,帮助人们获取 知识 和形成新的概念。
9.5 虚拟现实系统的分类
➢ 简易型虚拟现实系统 简易型虚拟现实系统可以仅由一台普通的计算 机组成,使用者通过键盘、鼠标便可与虚拟环 境进行交互。
碰撞检测
在虚拟现实中,常用碰撞来模拟现实生活中的接触、 抓、移动和打击等情形。虚拟现实系统的一个重要功 能,就是能快速进行虚拟世界中物体间的碰撞检测。 虚拟世界中的物体,是以计算机产生的几何模型形式 而存在的。这样,物体就可能占有一定的空间并具有 穿透性,或者以一种非现实的途径相互穿插。这些现 象在现实世界中是永远不可能发生的,因为物体间总 会先发生碰撞。目前有多种碰撞测试方法,其中,基 于快速计算的包围球碰撞测试方法和较为精确的包围 盒碰撞测试方法尤为人们所重视。
虚拟现实内容
➢ (1)虚拟环境建模 ➢ (2)动画制作 ➢ (3)物理仿真 ➢ (5)交互模式 ➢ (4)碰撞检测
虚拟环境建模
CAD技术为虚拟现实提供了有效的建模手段。模型工 具包括AutoCAD、3DS、Wavefront、Multigen、 Modelgen 2和Computer Vision等。这些模型可为多数 虚拟现实系统利用,节省了大量的再建时间。建模工 具一般提供了广泛的图形库支持。
9.2 虚拟现实的主要研究内容
虚拟现实的研究内容主要分以下几个方面。
1. 人与环境融合技术 2. 物体对象的仿真技术 3. VR图像生成技术及高效快速生成体系图技术 4. 实时处理及并发处理的多维信息表示技术 5. 高性能的计算机图形处理硬件研究 6. 分布式虚拟环境和基于网络环境的虚拟现实研究
动画制作
一些动画可用矩阵操作来支持移动及旋转,而摆动及 弹跳运动则需要专门程序。实时计算这些物理过程会 带来诸如系统延时等问题,在某些动画序列中,复杂 的动作可用简单的模拟方法而不需要复杂的数学过程。 这项技术要求将这些动作分解为一系列离散的关键模 型并放到数据库中
物理仿真
在进行物理仿真时,我们必须为物体设 计一些支持其某些物理行为的程序。这 一方面要求很强的计算能力,同时也使 系统增加了一些延时。例如,下落的物 体必须赋予质量属性,必须用运动方程 来计算其加速度
9.6.1 VRML节点
➢ 节点:VRML2.0节点可分成图形和非图形两 类节点。图形节点包括几何类型,如Box和 Sphere;属性节点,如Appearance和Material; 组节点,包括Shape和Transform。这些节点共 同构造了表述的场景。
➢ 节点字段:VRML2.0的节点字段可以给节点分 配属性,以区别同一类型的节点。
9.6.1 场景交互
VRML2.0采用事件机制来支持动态交互的场景。事件 是包含一些数据的信息,它被用来作为事件的探测器。 在VRML2.0中,每个事件包括两个部分:来源和目标, 它们都是由某个节点的字段表示的。VRML2.0提供了 一组描述事件探测器的节点。如TouchSensor用于描述 用户输入的消息;TimeSensor用于产生定时器消息; ProximitySensor用于相应用户进入某个区域的消息; VisibilitySensor用于判断某个包围盒区域的可见性等等。 探测器节点和插入器节点以及VRML与Java程序之间的 通讯等等,这些内容的引入,可以使场景交互变得很 复杂和符合实际。
} } geometry Box {
size 0.3 1.4 0 } }
9.6.2 物体造型
9.6.2 碰撞检测
Collision组节点观测观察者和组中的造型发生碰撞。语法如下:
Collision{
#exposedField
MFNode
children
#exposedField
SFVec3f
bboxCenter
相关文档
最新文档