虚拟现实技术―VRML篇
- 格式:doc
- 大小:95.50 KB
- 文档页数:49
虚拟现实技术实验报告----创建VRML基本造型华北水利水电学院虚拟现实技术实验报告20XX~20XX学年第二学期 20XX 级计算机科学与技术专业班级: 20XX153 学号: 20XX15320 姓名:李晓娜实验二创建VRML基本形体一、实验目的:掌握创建虚拟现实复杂形体的方法与步骤,掌握虚拟现实背景环境、光照、纹理贴图、视点的创建与使用。
二、试验内容:1)虚拟现实复杂组合形体的构建2)虚拟现实背景建模与特殊场景效果的实现 3)虚拟现实光照与纹理贴图 4)虚拟现实视点的创建与使用三、试验步骤:1)虚拟现实复杂组合形体的构建1、设置背景颜色,skyColor 1 1 1,即白色。
2、构造Shape造型节点。
设置外观,材质漫反射颜色为:,即红色;几何造型为Box,其size为:10 5。
3、创建坐标变换节点。
位置变换translation为- 0 ,旋转rotation为:1 0 0 ,子结点为挤压造型,外观颜色设置为红色,其中crossSection [0 0 0 2 0 2 ] spine [ 0 0 09 0 0] solid 为:FALSE。
4、构造坐标变换节点,translation 为:2 - - rotation为: 0 1 0 其子结点children为文本造型,字符串为:“20XX15320”。
5、构造坐标变换节点,translation为:-4 -5 ,其子结点children中定义shape节点造型,命名为:leg,材质漫反射颜色为红色,几何造型节点为:Box,其size为: 66、连续创建3个坐标变换节点,分别设置其translation 值,子结点children引用leg。
7、创建桌子下面的横木。
构造坐标变换节点,translation为:-4 -6 0 子结点children中为shape节点命名为:hengmu,外观漫反射颜色为:红色;几何造型为:Box,大小size为: 3。
VRML的虚拟现实技术在用升降梯设计中的应用分析【摘要】虚拟现实建模语言(VRML)是一种用于创建三维虚拟现实环境的技术,可以应用于各个领域,包括升降梯设计。
升降梯设计在建筑中起着重要作用,因此利用VRML技术进行设计和模拟可以提高效率和准确性。
虚拟现实技术可以帮助设计师更直观地呈现设计方案,同时提供更细致的细节和交互体验。
通过VRML在升降梯设计过程中,可以更好地解决设计中的技术挑战,提高设计质量和效率。
结合具体案例分析,展示了虚拟现实技术在升降梯设计中的应用优势和影响。
可以预见,未来虚拟现实技术将会在升降梯设计领域发挥更大的作用,带来更多创新和便利。
【关键词】关键词:VRML、虚拟现实技术、升降梯设计、优势、应用案例、影响、技术挑战、解决方案、未来发展。
1. 引言1.1 介绍VRML的虚拟现实技术虚拟现实建模语言(VRML)是一种用于创建三维虚拟世界的标准文件格式。
通过VRML技术,用户可以创建具有逼真感的虚拟环境,并且可以通过计算机图形技术对这些环境进行交互和导航。
虚拟现实技术已经在各个领域得到广泛应用,包括建筑设计、教育、娱乐等。
在建筑设计领域,VRML的虚拟现实技术可以帮助设计师将他们的想法转化为具体的三维模型,从而更好地理解和沟通设计概念。
VRML技术可以模拟真实世界中的建筑环境,并且可以进行实时的互动和漫游,使得设计师能够更好地评估设计效果和细节。
除了建筑设计,VRML的虚拟现实技术还可以应用于产品设计、游戏开发等领域。
通过虚拟现实技术,用户可以创造出一个仿真的环境,使得用户可以身临其境地体验和交互。
VRML的虚拟现实技术为各行业的设计师和开发人员带来了更多创新和可能性,使得他们可以更好地实现自己的创意和想法。
在未来,随着虚拟现实技术的不断发展,我们将会看到更多更广泛的应用场景。
1.2 介绍升降梯设计的重要性升降梯设计在现代建筑中扮演着非常重要的角色,它不仅能提高建筑物的舒适性和便利性,还能提升建筑物的整体效率和安全性。
(VR虚拟现实)VRML虚拟现实开发文档(含源代码)虚拟现实开发文档罗维030913501.功能概述运用vrml语言构造了一个虚拟现实世界。
运动物体包括气球,火车,汽车,交通灯等,静止物体包括山脉,树林,房屋,人物,花草,电话亭,国旗,座椅,广告牌,雨伞等,另外还包含背景和声音。
2.使用说明2.1广告牌截图:程序:#VRMLV2.0utf8Transform{translation0.00.00.0#背景颜色children[Transform{translation0.00.00children[#创建广告牌造型Shape{appearanceAppearance{materialMaterial{diffuseColor0.20.30.3}}geometryBox{#广告牌size126.50.2}}]}Transform{translation0.00.0-0.02children[Shape{ appearanceAppearance{ textureImageT exture{ url"advertisement.png"}materialMaterial{diffuseColor0.00.00.0}}geometryBox{size115.60.4#广告屏幕}}]}]}DEFlegTransform{#广告柱子translation5-40.1scale0.040.040.04children[Shape{#Shape模型节点appearanceAppearance{ materialMaterial{#空间物体造型外观diffuseColor0.20.30.3#一种材料的漫反射颜色}}geometryCylinder{#柱体节点radius2.0#圆柱体半径height100.0#圆柱体高topTRUE#圆柱体有顶#bottomTRUE#圆柱体有底bottomFALSEsideTRUE#圆柱体有曲面}}]}Transform{#椅子腿translation-1000childrenUSEleg}2.2热气球截图:程序:#VRMLV2.0utf8Group{children[Background{skyColor[0.20.50.6]}#创建月球造型Transform{translation000.0scale111children[Shape{#银白颜色appearanceAppearance{textureImageT exture{url"balloon.png"}materialMaterial{#空间物体造型外观diffuseColor0.50.50.7#一种材料的漫反射颜色ambientIntensity0.4#多少环境光被该表面反射specularColor0.80.80.9#物体镜面反射光线的颜色shininess0.20#造型外观材料的亮度}}geometrySphere{#球体radius4}}]}]}Transform{translation0-40.0scale10.60.6children[Shape{appearanceAppearance{textureImageT exture{url"color.png"}materialMaterial{#空间物体造型外观diffuseColor0.30.20.0#一种材料的漫反射颜色ambientIntensity0.4#多少环境光被该表面反射specularColor0.70.70.6#物体镜面反射光线的颜色shininess0.2#造型外观材料的亮度}}geometryCylinder{#潜艇舰桥(嘹望塔)radius1.0height3.0sideTRUEtopTRUEbottomTRUE}}]}热气球运动程序:#VRMLV2.0utf8DEFfly1Transform{#引入月球造型childrenInline{url"balloon.wrl"}}DEFTime1TimeSensor{#时间传感器cycleInterval32loopTRUE}DEFflyinter1PositionInterpolator{#移动位置节点key[#相对时间的逻辑值0.0,0.083,0.166,0.252,0.332,0.412,0.496,0.581,0.664,0.747,0.83,0.913,1.0]keyValue[#空间坐标的位置值与相对时间的逻辑值00-20,6.60-15,13.20-9,2000,13.209,6.60150020-6.6015-13.209-2000-13.20-9-6.60-1500-20]}ROUTETime1.fraction_changedTOflyinter1.set_fractionROUTEflyinter1.value_changedTOfly1.set_translation2.3国旗截图:程序:#VRMLV2.0utf8Group{children[Transform{ translation-22-322 scale0.10.10.1 children[Transform{children[Shape{ appearanceAppearance{ textureImageT exture{ url"flag.gif"}} geometryBox{size270.127}}]}Transform{ translation0150 children[Shape{ appearanceAppearance{ textureImageT exture{ url"flagbase.gif"}} geometryCylinder{ radius0.2 bottomTRUE topTRUEheight30 sideTRUE}}}Transform{children[Shape{ appearanceAppearance{ textureImageT exture{ url"flagbase.gif"}} geometryCylinder{ radius2.0 bottomTRUE topTRUEheight1.0 sideTRUE}}]}Transform{ translation4280scale222children[Shape{ appearanceAppearance{ textureImageT exture{ url"china.gif"}} geometryBox{size4.02.00.01}}]]}]}Viewpoint{orientation0101.2position-15-225}2.4公共汽车截图:程序:#VRMLV2.0utf8DEFBusTransform{children[DEFbodyShape{appearanceAppearance{materialDEFLtGray_ColorMaterial{ambientIntensity0.25diffuseColor0.702130.702130.70213}textureImageT exture{url"bus_side.jpg"}}geometryIndexedFaceSet{coordCoordinate{point[1.79090-7.67,1.790907.6904,1.79091.9827.6904,1.79093.9647.1949,1.79093.964-7.1745,1.79093.4685-7.67,-1.80150-7.67,-1.801507.6904,-1.80151.9827.6904,-1.80153.9647.1949,-1.80153.964-7.1745,-1.80153.4685-7.67]}coordIndex[0,5,4,2,-1,0,2,1, -1,4,3,2,-1,11,6,7,8,-1,9,10,11,8,-1] texCoordT extureCoordinate{ point[0.00770660.017324, 0.997410.017324,0.997410.49809,0.965490.97886,0.0396330.97886,0.00770660.85867,0.00770660.017324,0.997410.017324,0.997410.49809,0.965490.97886,0.0396330.97886,0.00770660.85867]}}}DEFfront01Shape{ appearanceAppearance{ materialUSELtGray_Color textureImageT exture{ url"bus_front.jpg"}} geometryIndexedFaceSet{ coordCoordinate{point[1.790907.6904,1.79091.9827.6904,1.79093.9647.1949,-1.801507.6904,-1.80151.9827.6904,-1.80153.9647.1949]}coordIndex[3,0,1,4,-1,4,1,2, 5,-1]texCoordT extureCoordinate{ point[0.936140.018577, 0.936140.48085,0.936140.97202,0.0724810.018577,0.0724810.48085,0.0724810.97202]}}}DEFtop01Shape{ appearanceAppearance{materialUSELtGray_Color } geometryIndexedFaceSet{ coordCoordinate{point[1.79093.9647.1949, 1.79093.964-7.1745,-1.80153.9647.1949,-1.80153.964-7.1745]}coordIndex[2,0,1,3,-1]}}DEFback01Shape{ appearanceAppearance{ materialUSELtGray_Color } geometryIndexedFaceSet{ coordCoordinate{point[1.79090-7.67,1.79093.964-7.1745,1.79093.4685-7.67,-1.80150-7.67,-1.80153.964-7.1745,-1.80153.4685-7.67]}coordIndex[4,1,2,5,-1,5,2,0, 3,-1]}}]translation0.005320-0.01021}2.5汽车截图:程序:#VRMLV2.0utf8Background{#空间背景中,空中无颜色,即黑色。
VRML什么是 VRML?VRML(Virtual Reality Modeling Language)是一种用于描述3D图形和多媒体的编程语言。
它是一种基于文本的标记语言,用于创建虚拟现实(VR)环境,使用户能够在计算机中沉浸式地体验3D场景。
VRML最初由Silicon Graphics公司于1994年推出,被定义为ISO标准(ISO/IEC 14772)。
它的目标是向Web浏览器添加3D图形功能,以便人们可以通过互联网访问和交互式地浏览虚拟3D环境。
VRML的特点和功能•描述三维图形和交互性:VRML可以用于描述物体的形状、纹理、材质和位置等,以及用户与物体之间的交互行为,例如单击、拖动、旋转等。
•可移植性:VRML文件可以在多个平台和设备上运行,并且与不同的Web浏览器兼容。
这使得用户可以轻松地在不同的操作系统和设备上获取相同的虚拟现实体验。
•开放性和扩展性:VRML是一个开放标准,可以通过扩展来支持新的功能和技术。
用户可以自定义节点、传感器和动画等,以创建更复杂的3D场景和交互效果。
•轻量级和高效性:与其他3D图形格式相比,VRML 文件相对较小,加载速度快。
这对于在互联网上传输和浏览大规模3D场景非常重要。
VRML文件结构VRML文件由一系列的节点组成,每个节点都有一个节点类型和一组字段。
节点类型定义了节点的功能和属性,而字段用于存储节点的值。
以下是一个简单的VRML文件示例:#VRML V2.0 utf8#声明一个场景节点DEF SCENE Scene {#声明一个转换节点Transform {#定义平移变换属性translation 0 0 -2#定义旋转变换属性rotation 0 1 0 0#定义缩放变换属性scale 1 1 1#声明一个形状节点Shape {#定义外观属性appearance Appearance {#定义材质属性material Material {diffuseColor 1 0 0}}#定义几何体属性geometry Box {size 1 1 1}}}}在上面的示例中,SCENE是场景节点,Transform是转换节点,Shape是形状节点,Appearance是外观节点,Material是材质节点,Box是几何体节点。
第三部分虚拟现实技术--VRML篇3 VRML基本语法及应用3.1 VRML造型VRML造型主要通过几何节点和几何属性节点来实现。
由于这些节点属于辅助节点,不能直接放进场景图,因此要实现VRML造型还需要一个Shape节点。
几何节点是通过Shape 节点的geometry域来包含的,几何属性节点是通过Shape节点的appearance域来包含的。
用于造型的节点:共22个形状(Shape)节点1个几何节点10个:Box(长方体)、Cone(圆锥)、Cylinder(圆柱)、ElevationGrid(标高格阵)、Extrusion(挤出面)、IndexedFaceSet(索引面集)、IndexedLineSet(索引线集)、PointSet(点集)、Sphere(球面)、Text(文本)几何属性节点10个:Appearance(外观、Color(颜色)、Coordinate(坐标)、ImageTexture (图像纹理)、Material(材质)、MovieTexture(影像纹理)、Normal(法线)、PixelTexture (像素纹理)、TextureCoordinate(纹理坐标)、TextureTransform(纹理变换)字型(Fontstyle)节点:1个3.1.1 基本造型由Shape节点、Appearance节点、Material节点和基本几何节点共同实现。
3.1.1.1 Shape节点3.1.1.2. 基本的几何造型节点基本的VRML造型节点有Box,Cylinder,Cone,Sphere节点。
例3-1-1:#创建一个长宽高分别为4.0,1.0,4.0个vrml单位的长方体#VRML V2.0 utf8Shape{appearance Appearance {material Material { }}geometry Box{size 4.0 1.0 4.0}}例2:#创建一个底面半径为4.0高为1.0只有底面的圆柱体#VRML V2.0 utf8Shape{appearance Appearance {material Material { }}geometry Cylinder {radius 4.0height 1.0top FALSEside FALSE}}例:#创建一个底面半径为2.0单位高为1.0单位的圆锥#VRML V2.0 utf8Shape{appearance Appearance {material Material { }}geometry Cone {bottomRadius 2.0height 1.0}}3.1.1.3 节点的编组例:航空塔模型以sphere、box、cylinder、cone为节点创建一个航空塔的三维模型,其中用DEF定义了一个名字为bwhite的appearance的节点。
虚拟现实(VRML语言)摘要:虚拟现实技术是利用计算机的图形环境和电子技术外设产生逼真的视、听、触、力等伪物质三维感觉环境。
VRML 是面向实时漫游的虚拟现实造型语言。
本文简要介绍了虚拟现实技术的概念、技术特征、应用及VRML的概念、发展与构造,并讨论了VRML在虚拟现实技术应用中重要地位。
关键词:计算机;虚拟现实;VRML1 虚拟现实技术1.1虚拟现实技术的概念虚拟现实(Viamal Reality)技术是20世纪90年代以来兴起的一种新型信息技术,是一种新的人一机界面形式。
它追求的是将传统的计算机从一种需要人用键盘、鼠标对其进行操作的设备变成了人处于计算机创造的人工环境中。
用户借助物定装备(如数据手套、头盔等)以自然方式与虚拟环境交互作用、相互影响,从而获得与真实世界等同的感受以及在现实世界中难以经历的体验。
1.2虚拟现实技术的发展过程虚拟现实技术的起源可以追溯到1970年,任Ivan Suther Land领导下研制成功了第一个头盔显示器。
人们戴上头盔显示器,可以看到一个边长5厘米的立方体线框图飘浮在自己眼前。
当实验者转动头部时,可以看见这个发光的立方体的不同侧面,可以像真实世界中那样来确定这个物体的形状和位置。
1972年Nolan·Bushnell发明了电子游戏rorh;1985年,Apple公司的Macintosh开始研制Sinmet,1989年Sinmet完成。
NASA的Ames研究中心利用Radioshaek公司的袖珍式液晶显示电视的屏幕研制成为头戴式虚拟现实眼镜,并研制成第一台商用虚拟现实硬/软件,美国空军的Supemoelwit 飞行模拟器。
虚拟现实这个名词已成为平常生活话题。
1.3虚拟现实技术的特征虚拟现实技术具有以下三个基本特征:(1)沉浸性。
虚拟现实技术是根据人类的视觉、听觉的生理心理特点,由计算机产生逼真的三维立体图像,使用者戴上头盔显示器和数据手套交互设备,便可将自己置身于虚拟环境中,成为虚拟环境中的一员。
VRML虚拟现实场景设计及动态仿真的实现VRML virtual reality scene design And dynamic simulation to achieve学院:信息科学与工程学院专业班级:计算机1001学号:100405116学生姓名:魏国亮指导教师:刘阳(副教授)2014年6月摘要虚拟现实(Virtual Reality,VR)是由美国VPL公司的Jaron Laniner在1989年创造的一个新词。
它通常是指采用头盔显示器,数据手套等一系列新型交互设备构造出的用以体验或感知虚拟境界的一种计算机软件,硬件环境,用户使用这些高级设备以自然的技能(如头的转动,身体的运动以及人类的自然语言等)向计算机发送各种指令,并得到环境对用户,视觉,听觉,触觉等多种感官信息的实时反馈。
世界上首个具有虚拟现实思想的装置是由Morton Heilig在1962年研制成功的,它是一种被称之为Sensorma的具有多种感官刺激的全景式立体电影设备。
该设备主要由三维视频(由一对并排的35mm摄像机同时拍摄)组成,并具有立体声功能,能产生不同的气味,能产生自然风的吹拂,座椅还可以随剧情的变化震动。
这所有的一切都使电影观看者这是体验到骑着摩托车漫游纽约市区,看见高楼,听见鸟语,闻到花香,和风吹拂面庞以及不时颠簸所带来的神奇感受。
自20世纪90年代以来,虚拟现实技术一直是信息领域研究、开发和应用的热点方向之一。
它借助计算机构建出一个与现实环境十分逼真的虚拟环境,而且支持用户使用自然的技能亲身感受它。
目前己经广泛应用于军事、科学计算可视化、教育与培训、设计与规划、虚拟测试、虚拟游览、购物、交互式娱乐、工程技术、科技探索等多方面领域。
本文介绍了使用虚拟建模语言VRML来构建的3D虚拟场景的技术和它在虚拟风力发电厂环境中的动态仿真的实现。
用虚拟现实语言构建风力发电厂可以在风力电厂竣工前就可以提前展示电厂全貌,给投资方以及即将工作的人们一个直观的展示。
虚拟现实技术――VRML篇一、VRML介绍1.什么是VRML?VRML是“Virtual Reality Modeling Language”的缩写形式,意思是“虚拟现实造型语言”。
第一代Web是以HTML为核心的二维浏览技术,受HTML语言的局限性,VRML 之前的网页只能是简单的平面结构,而且实现环境与参与者的动态交互是非常烦琐的。
第二代Web是以VRML为核心的三维浏览技术。
第二代Web把VRML与HTML、Java、媒体信息流等技术有机地结合起来,形成一种新的三维超媒体Web。
VRML是用来描述三维物体及其行为的,可以构建虚拟境界(Virtural World), 可以集成文本、图像、音响、MPEG影像等多种媒体类型,还可以内嵌用Java、ECMAScript等语言编写的程序代码。
以VRML为核心构建的虚拟世界中用户如身处真实世界,可以和虚拟物体交互,人们可以以习惯的自然方式访问各种场所,在虚拟社区中“直接”交谈和交往。
事实上,目前采用VRML技术取得成功的案例已经很多,例如探路者到达火星后的信息就是利用VRML在因特网上即时发布的,网络用户可以以三维方式随探路者探索火星。
2.VRML的工作原理VRML定义了一种把3D图形和多媒体集成在一起的文件格式。
从语法角度看,VRML文件是显式地定义和组织起来的3D多媒体对象集合;从语义角度看,VRML 文件描述的是基于时间的交互式3D多媒体信息的抽象功能行为。
VRML文件描述的基于时间的3D空间称为虚拟境界(Virtual World),简称境界,所包含的图形对象和听觉对象可通过多种机制动态修改。
VRML文件可以包含对其他标准格式文件的引用。
可以把JPEG、PNG和MPEG 文件用于对象纹理映射,把WAV和MIDI文件用于在境界中播放的声音。
另外,还可以引用包含Java或ECMAScript代码的文件,从而实现对象的编程行为。
VRML使用场景图(Scene Graph)数据结构来建立3D实境,VRML的场景图是一种代表所有3D世界静态特征的节点等级:几何关系、质材、纹理、几何转换、光线、视点以及嵌套结构。
虚拟现实技术――VRML篇一、VRML介绍1.什么是VRML?VRML是“Virtual Reality Modeling Language”的缩写形式,意思是“虚拟现实造型语言”。
第一代Web是以HTML为核心的二维浏览技术,受HTML语言的局限性,VRML之前的网页只能是简单的平面结构,而且实现环境与参与者的动态交互是非常烦琐的。
第二代Web是以VRML为核心的三维浏览技术。
第二代Web 把VRML与HTML、Java、媒体信息流等技术有机地结合起来,形成一种新的三维超媒体Web。
VRML是用来描述三维物体及其行为的,可以构建虚拟境界(Virtural World), 可以集成文本、图像、音响、MPEG影像等多种媒体类型,还可以内嵌用Java、ECMAScript等语言编写的程序代码。
以VRML为核心构建的虚拟世界中用户如身处真实世界,可以和虚拟物体交互,人们可以以习惯的自然方式访问各种场所,在虚拟社区中“直接”交谈和交往。
事实上,目前采用VRML技术取得成功的案例已经很多,例如探路者到达火星后的信息就是利用VRML在因特网上即时发布的,网络用户可以以三维方式随探路者探索火星。
2.VRML的工作原理VRML定义了一种把3D图形和多媒体集成在一起的文件格式。
从语法角度看,VRML文件是显式地定义和组织起来的3D多媒体对象集合;从语义角度看,VRML文件描述的是基于时间的交互式3D多媒体信息的抽象功能行为。
VRML文件描述的基于时间的3D空间称为虚拟境界(Virtual World),简称境界,所包含的图形对象和听觉对象可通过多种机制动态修改。
VRML文件可以包含对其他标准格式文件的引用。
可以把JPEG、PNG和MPEG文件用于对象纹理映射,把WAV和MIDI文件用于在境界中播放的声音。
另外,还可以引用包含Java或ECMAScript代码的文件,从而实现对象的编程行为。
VRML使用场景图(Scene Graph)数据结构来建立3D实境,VRML的场景图是一种代表所有3D世界静态特征的节点等级:几何关系、质材、纹理、几何转换、光线、视点以及嵌套结构。
几乎所有生产厂商,无论是CAD、建模、动画、VR,还是VRML,他们的结构核心都有场景图。
境界中的对象及其属性用节点(Node)描述,节点按照一定规则构成场景图(Scene Graph),也就是说,场景图是境界的内部表示。
场景图中的第一类节点用于从视觉和听觉角度表现对象,它们按照层次体系组织起来,反映了境界的空间结构。
另一类节点参与事件产生和路由机制,形成路由图(Route Graph),确定境界随时间的推移如何动态变化。
VRML文件的解释、执行和呈现通过浏览器实现,这与利用浏览器显示HTML文件的机制完全相同。
浏览器把场景图中的形态和声音呈现给用户,这种视听觉呈现即所谓的虚拟世界(境界)。
用户通过浏览器获得的视听觉效果如同从某个特定方位体验到的,境界中的这种位置和朝向称为取景器(Viewer)。
3.VRML的应用VRML在电子商务、教育、工程技术、建筑、娱乐、艺术等领域有广泛的应用。
例如在教育上,VRML不仅仅是HTML功能更强的替代品,其潜在意义在于突破上述基于WWW的教学模型建立更自然、更真实的虚拟教育环境。
在这种环境中学生可以以浏览探索的方式汲取知识,如进入虚拟太空学习天文知识,利用虚拟地球学习地理知识,穿过历史长廊与历史人物交流,进入分子世界游历化学殿堂等等,这些曾经是梦想中的学习方式都可以逐步实现。
在这个虚拟教育世界中,甚至可以有利用VRML制作的动画人物扮演教师,其面部表情和形体动作利用动作跟踪系统捕捉下来,这样得到的讲课节目将是三维的。
如果把这种方式扩大到教学双方,则可实现具有实时交互性的虚拟教学——教师控制的虚拟教师和学生控制的虚拟学生就可以在一个虚拟教室中相互交流。
4.VRML的工作组及其研究目标为了推动VRML技术的发展,VRML协会组织了很多工作组,每个工作组都是自愿组织、自我约束、并经VRML协会认可的技术委员会,负责某个与VRML有关的专题技术的研究和实现工作。
人性动画工作组(Humanoid Animation WG)利用VRML表现人类行为特性。
色彩保真工作组(Color Fidelity WG)确保采用任何平台的观众所看到的效果都和创作者的原始作品一样,颜色应相当一致。
元形式工作组(Meta Forms WG)针对利用形式文法生成的作品,提出一般性的方法论和一般性规范,使之能够映射为某种特定形式。
首要目标是能够表示"数字生命格式"( Digital Life-Forms)结构和增长。
面向对象扩展工作组(Object-Oriented Extensions WG)探讨和推动对VRML进行面向对象扩展的方法。
数据库工作组(Database WG)推进基于VRML商业应用的创建,利用数据库维护VRML 内容的持久性、升级能力和安全传输能力。
外部创作接口工作组(External Authoring Interface WG)在VRML境界和外部环境之间建立标准接口。
界面组件工作组(Widgets WG)为开发者和用户提供一套基础性的、可自由使用的标准用户界面组件集,并提供支持基本组件集和所有VRML组件的理论框架。
二进制压缩格式工作组(Compressed Binary Format WG)探讨并开发VRML文件的二进制编码方法,重点是研究为了快速传送目的而尽量缩小文件尺寸,同时为了快速解码目的而尽量简化文件结构。
通用媒体库工作组(Universal Media Libraries WG)为了提高VRML境界的真实感,同时减少网络的下载量,而定义一种由驻留本地的媒体元件(纹理、声音和VRML对象)组成的小型跨平台媒体库。
同时定义一种统一机制,通过这种机制,VRML内容创作者可以在自己的境界中使用这些媒体元件。
活动境界工作组(Living Worlds WG)为多用户(包括多个开发者)应用的产生和进化定义概念框架,并确定一组界面。
键盘输入工作组(Keyboard Input WG)为了使内容创作者能够在自己的境界中访问键盘输入,定义一个或多个扩充节点。
一致性工作组(Conformance WG)为与一致性测试有关的问题提供一个讨论场所,特别地,本组将辨别VRML实现发生分歧的地方以及相应的动作序列。
生物圈工作组(Biota WG)为生命系统(Living System)的研究和学习建立、配备数字式工具和环境。
分布式交互仿真工作组(Distributed Interactive Simulation WG)为建立有多广播能力(Multicast-Capable)的大规模虚拟环境(Large-Scale Virtual Environments,LSVEs)确立初始网络约定。
VRML脚本工作组(VRML Script WG)向VRML监查组(VRML Review Board,VRB)提供有关Java和JavaScript的问题列表、修改建议和评论。
自然语言处理和动画工作组(NLP & Animations WG)为了使用户能使用自然语言和VRML动画形象进行交流,从而使交互更自然,增强用户和动画形象之间的信息流动,研究如何使用“问题/回答”、“命令/响应”式的对话以及基于操作系统命令和字符控制的自然语言。
VRML-DHTML集成工作组(VRML-DHTML Integration WG)为VRML 和DHTML在文档对象模型、组件(Component)接口和绘制等三个层次的紧密集成开发一种概念模型。
6.研究现状VRML97发布后,互联网上的3D图形几乎都使用了VRML。
由于技术的局限性,如带宽不够,需要下栽插件浏览,文件量大,真实感、交互性需要进一步加强等原因,最近一二年,许多制作Web3D图形的软件公司的产品,并没有完全遵循VRML97标准,而是使用了专用的文件格式和浏览器插件,开发了比较实用的VR软件。
这些软件有些比VRML有了进步,在渲染速度、图像质量、造型技术、交互性以及数据的压缩与优化上,都有胜过VRML之处。
比如,Cult3D、Viewpoint、GL4Java、Pulse3D、Flatland、Flash、JPEG2000等。
CULT3D、VIEWPOINT、360度环视等技术正被应用。
以Blaxxun和ParallelGraphics公司为代表,它们都有各自的VR浏览器插件,并各自开发基于VRML标准的扩展节点功能(X3D),使3D的效果,交互性能更加完美;支持MPEG,Mov、Avi等视频文件,Rm等流媒体文件,Wav、Midi、Mp3、Aiff等多种音频文件,Flash动画文件,多种材质效果,支持Nurbs曲线,粒子效果,雾化效果;支持多人的交互环境,VR眼镜等硬件设备;在娱乐、电子商务等领域都有成功的应用,并各自为适应X3D的发展,以X3D为核心,有Blaxxun3D等相关产品。
在虚拟场景,尤其是大场景的应用方面,以VRML标准为核心的技术具有独特的优势。
二、初识VRML(一)VRML的文件结构1.文件头VRML2.0(VRML97)开头如下:# VRML V2.0 utf8VRML是大小写敏感的,utf8是指一种纯文本编码方式2.场景图(Scene Graph)由描述“对象及其属性”的节点组成,节点是VRML的基本单元,场景图的第一类节点用于从视觉和听觉角度表现对象,它们是按照层次体系结构组织的;另一类节点,则参与事件产生和路由机制。
3.原型(Prototype)用户可以通过原型扩充VRML的节点类型集。
原型的定义可以包含在使用该原型的文件中,也可以在外部定义。
4.事件路由(Route)有些VRML节点能通过产生事件响应环境变化或用户交互。
事件一旦产生,就按时间顺序向路由目标节点发送。
目标节点接收后进行相应处理,可改变节点状态,产生其他事件,或者修改场景图的结构。
利用脚本节点Script,作者可以Java或JavaScript语言自定义任意事件处理。
(二)VRKL节点和数据类型虚拟场景由对象构成,对象及其属性用节点(Node)描述,节点是构成VRML 文件的基本单元。
VRML97定义了54种基本节点类型(内部节点类型),用户也可以通过原型机制定义自己的节点类型。
节点由域和事件组成:1.域(field)描述了节点的当前状态。
其中外露域(exposedField)是域和事件的统一体,它既作为域描述节点,又隐含着形如“set_域名”的入事件和“域名_changed”的出事件。
2.事件(event)分为入事件和出事件,入事件将导致节点状态的改变;出事件向外报告自身状态的变化。