当前位置:
文档之家› VRML及其在虚拟现实中的应用
VRML及其在虚拟现实中的应用
3 种技术要素间的关系.
1) 图像( Imagery) . 虚拟物体要有三维结构的显示, 其中包括主要 由以双目视差、运动视差提供的深度信息; 图像显示要有足够大的视
场, 造成 在图像世界内观察 而不是 窗口观察 的感觉; 显示画面符
合观察者当前的视点, 能跟随视线变化; 物体图像能得到不同层次的 细节审视.
图 1 虚拟现实的 技术要素
与用户的交互作用中, 其动态都要有一定的表现, 这些表现或者服从
于自然规律, 或者遵循设计者想象的规律,. 自主性是指虚拟环
收稿日期: 2001- 05- 20 作者简介: 吴英杰( 1979- ) , 男, 硕士研究生.
增刊
吴英杰: VRM L 及其在虚拟现实中的应用
31
mat erial Material{ dif fuseColor 0 0 1} # 蓝色( RGB 为 0 0 1) } geometry Box{ size 6. 0 0. 1 4. 0} # 桌面的几何形状: 长方体( Box ) } T ransform{ # Group 的子节点之二: 桌腿一, 同时也是只拥有一个子节点的组节点 translat ion - 2. 5 - 1. 5 1. 75 # 本组节点的基本坐标位置 children DEF Deskleg Shape{ # 定义桌腿的形状, 也是 T ransform 组节点的唯一子节点 appearance U SE Blue # 桌腿颜色用已定义的蓝色 geometry Cylinder{ # 桌腿的几何形状为圆柱( Cylinder) radius 0. 2 # 圆柱的半径域和域值 heig ht 3. 0 # 圆柱的高度域和域值 } }} T ransform{ # Group 的子节点之三: 桌腿二 translat ion 2. 5 - 1. 5 1. 75 # 桌腿二的坐标位置 children U SE Deskleg # 桌腿二的形状使用已定义的桌腿一的形状 } T ransform{ # Group 的子节点之四: 桌腿三 translat ion - 2. 5 - 1. 5 - 1. 75 children U SE Deskleg } T ransform{ # Group 的子节点之五: 桌腿四 translat ion 2. 5 - 1. 5 - 1. 75 children U SE Deskleg } Group{ # Group 的子节点之六: 桌面上的球, 同时也是一个编组节点 children [ DEF M ysphere T ransform{ # 定义桌面上的球 translat ion 0 0. 55 0 # 球的坐标位置 children Shape{ # 球的形状 appearance Appearance{ # 球的外观 mat erial Material{ } # 球的颜色用缺省的白色 } geometry Sphere{ radius 0. 5} # 球的半径 }} DEF M ysphereSensor PlaneSensor{ # 定义球的平面传感器 max Posit ion 2. 8 0. 55 # 和下一句一起限制球的移动范围 minPosition - 2. 8 0. 55 } ] } ]} ROUT E MysphereSensor. translat ion_changed T O M ysphere. set_translat ion # 路由: 将球的平面传感器 的输出( 鼠标移动位置) 连接到球的输入( 球的坐标位置) 将这段文字以文本形式存为 desk. w rl, 然后从带有 VRM L 插件的浏览器中打开, 即可欣赏这一实例 了. 在这个简单的实例中, 绘制了一个拥有四个桌腿的蓝色桌子, 在桌面上有一个白球. 当将鼠标放在白 球上方时, 可以按住鼠标来水平移动白球, 且白球的移动范围被限制在桌面内.
能解决在工程、医学、军事等方面的问题, 这些应用是 VR 与设计者并行操作, 为发挥它们的创造性而设
计的. 这极大地依赖于人类的想象力, 这就是 VR 的第二个特征 想象性. VR 的最主要的技术特征是沉浸感, 即身临其境的感觉. 导致 沉浸感 的原因是用户对计算机环境的
虚拟物体产生了类似于对现实物体的存在意识或幻觉. 为此, 必须具备 3 种基本技术要素. 图 1 表示出了
32
福州大学学报( 自然科学版)
第 29 卷
3 VRML 在三维场景建模中的应用[ 3, 4]
3. 1 建模原理
简单定义一个对象的静态三维几何特性对于 VR 系统中的物体来说还远远不够, 在虚拟空间中的物
体还具有动态特征如位置、碰撞、抓取、放缩、表面扭曲的改变等. 物体对象位置的变化主要由平移、旋 转、比例缩放等几何变换所引起.
则缩放矩阵为:
sx 0 0 0
0 sy 0 0 S=
0 0 sz 0
0 0 01
则缩放变换可以表示为:
P = SP
3. 1. 3 旋转变换
设点 P ( x , y , z , 1) 的坐标在三维空间的旋转角度为 x 、 y 、 z , 其中: x 、y 和 z 分别为坐标在 YZ、X Z 和 X Y 平面的旋转角, 令:
3. 1. 1 平移变换 设点 P( x , y , z , 1) , 若用 T 代表平移变换矩阵,
1 0 0 dx
0 1 0 dy T=
0 0 1 dz
从而平移可表示为:
000 0
P = TP
3. 1. 2 缩放变换 设点 P( x , y , z , 1) 在 X , Y , Z 3 个方向分别乘以比例因子 sx , sy , sz 后得到P ( x , y , z , 1 ) ,
一个典型的 V R ML 文件包括: 文件头、注释、节点及其域、事件和路由等[ 2] : 1) 文件头. 文件均以 # VRML V2. 0 utf 8 开头. 文件头告诉浏览器该文件是: 一个 VRM L 文件; 符合 VRML 规范的 2. 0 版本; 是一个使用国际 UT F - 8 字符集的文件. 2) 注释. 注释以# 号开始, 结束于该行的最后. 3) 节点. VRML 文件包含描述空间造型及其属性的节点, 这些是 VRM L 的构件. 单个节点描述造 型、颜色、光照、视点, 以及动画定时器、传感器、内插器等的定位和朝向等等. 节点一般包括 节点类 型; 一对括号; 括在括号中的一定数目描述节点属性的域( 可选) 和域值. 由节点及其相关域定义的造 型或属性在空间中被视为一个整体. 4) 域及域值. 域定义节点的属性. 在一个节点中, 可能有一个域, 也可能有数个域, 域的顺序是不重 要的. 域是可选的, 因为每个域都有一个缺省域值, 如果你不指定域值, VRML 浏览器将使用缺省域值. 域值定义如颜色、尺寸和位置等属性, 每个值属于特定的域值类型, 如浮点型、布尔型等. 5) 定义及使用节点名称. VRM L 文件中每个节点都可认为是一个对象, 我们在定义后可以任意引用. 6) 事件和路由. 为了使虚拟空间具有动感, 便于用户交互, VRML 提供事件和路由的定义和使用. 在 两个节点间创建一条通路( 路由) , 通过发送事件使一个节点控制另一个节点的状态. 其语法为 ROU T E 输出节点及事件 T O 输入节点及事件 . 2. 4 一个简单实例 # VRML V2. 0 utf 8 # 文件头 Group{ # 基本组节点, 将以下各节点编组 children [ # 子节点列表 Shape{ # Group 的子节点之一: 桌面 appearance DEF Blue Appearance{ # 定义蓝色外观节点即桌面的颜色
30
福州大学学报( 自然科学版)
第 29 卷
境中物体依据物理定律动作的程度. 如当受到力的推动时, 物体会向力的方向移动、翻倒或从桌面落到地 面等等.
上述技术要素之间是相互关联的, 它们对于用户的 存在 意识的影响, 进而导致 沉浸感 的过程实 际上是基于人的认知机理, 可以说心理学是虚拟现实的物理学.
第 29 卷 增刊 2001 年 8 月
福州大学学报( 自然科学版)
Jour nal of Fuzhou U niversity ( N atural Science)
V ol. 29 Supp. Aug . 2001
文章编号: 1000- 2243( 2001) S0- 0029- 06
VRM L 及其在虚拟现实中的应用
2) 交互( Interact ion) . 虚拟物体与用户间的交互是三维的, 用户是
交互的主体; 用户能觉得自己是在虚拟环境中参与对物体的控制; 交
互是多感知的, 用户可以使用与现实生活不同的方式( 例如手语) 与虚 拟物体交互.
3) 行为( Behavior) . 虚拟物体在独自活动时、或相互作用时、或在
无论平台是 PC 还是 SGI, 都可以浏览 VRM L 世界; 基于 Web, 能够建立三维可视化服务器; 能够快 速建模, 支持 PROT O 等灵活的编程方式. 2. 3 语法
VRM L 三维空间是以浏览器的中点为缺省原点, 从原点向右、向上和向前 分别为 X、Y 和 Z 轴的正 向. 要想创建不在缺省位置的对象, 必须使用调整原点位置的节点.
吴英杰, 王晓东
( 福州大学信息科学与技术学院, 福建 福州 350002)
摘要: 虚拟现实是计算机模拟的三维环境, 用户在 W WW 中可以 走进这 个环境 并操纵系 统中的 对象, 使其实
时性和交互性变为现实. V RM L 是 HT M L 的 3D 模拟, 它 不仅可 以用来建 立三维 场景的 模型, 也可 以用来实
2 VRML 技术简介
2. 1 现状 VRM L 是 H T ML 的 3D 模拟, 它使用 VRM L 浏览器来描述现实世界和链接. VRM L 既可以用来建立
真实世界场景的模型, 也可以建立虚构的三维世界, 就像许多游戏中的那样. 在 3D 中浏览, 并不等于把 2D 抛掉, 你仍可以保留图像、视频和音频. VRML 提供了 6+ 1 度的自由, 用户可以沿着三个方向移动, 也可以沿着三个方位旋转, 同时还可以建立其它 3D 空间的超链接. 2. 2 优点