基于Web3D的虚拟仿真技术及应用研究
作者: 柴剑飞 胡小梅 俞涛
来源:《科技创新导报》 2011年第29期
柴剑飞 胡小梅 俞涛
(上海大学上海市机械自动化与机器人重点实验室 上海 200072)
摘 要:目前WEB3D虚拟现实软件和技术已达几十种之多。例如,-VRML、X3D、Viewpoint、Cult3D、Java3D、VirTools、Shockwave3D等对这些技术进行了分析介绍,对基于Web3D的各种热点仿真应用进行了总结,并对Web3D的发展和应用前景做了展望。
关键词:虚拟仿真 虚拟现实 Web3D
中图分类号:TP391 文献标识码:A 文章编号:1674-098X(2011)10(b)-0026-02
braille
1 Web3D技术
1.1 VRML
tried
VRML是VRML联盟发布的虚拟现实建模语言,是一个开放的、可扩展的、工业标准的景象描述语言。它的出现主要是为了解决在网页中实现三维动画的效果以及基于三维对象的用户交互问题。
VRML1.0支持相对简单的动画,而VRML2.0通过允许Java和JavaScrip程序员编写在VRML对象上施加动作的脚本,以支持复杂的3D动画、模拟和行为。
VRML技术的原理是在用户端提供一些基本的三维图形库,并在网页运行时实时着色和渲染,这样就使得在网络上传输的数据量大大减少。事实上,VRML文件只是一个文本文件。当你在网页上点击VRML文件时,如果你的计算机上安装了相应的VRML浏览器,它便会首先将VRML文件(文本文件)下载到本地机上,然后在本地机上解释运行,因此这时的运行速度只是取决于本地计算机的性能,而与网络的速度无关。
1.2 X3D
Web3D协会为下一代VRML制定的X3D标准则使VRML又得到新的发展。X3D标准由XML、X3D文件格式和一个3D引擎组成。X3D文件格式沿袭了VRML97的节点、域、域值的结构,兼容VRML97标准和MPEG-4格式。3D引擎基于Java Applet,无论是文字、图片还是声音都可以方便的与3D内容结合,无需安装专用的插件就可以在浏览器中观看。除此之外,X3D新规范中突出了VRML与XML的集成。X3D采用可扩展标记语言编码,定义了一个小型运行内核、一组API和多个扩展集,具有小型化、组件化和可
扩展等特性。通过XML,X3D能轻易地整合到网络浏览器和其他应用程序里。
X3D体系结构的设计是以软构件技术为指导的。构件是指功能相关的一个或多个节点类型的一个集合,一个构件扩展内核在某一特定领域的功能。X3D首先将VRML的关键特性封装为一个小型的、可扩展的内核,然后通过特性集扩展内核,实现复杂的或是应用程序定义的功能。用户可以在内核上建立一个完整的VRML97扩展,从而实现对VRML97规范的兼容;也可以添加其他扩展,如NURBS扩展、二进制文件格式扩展及Goral扩展等。
1.3 Viewpoint
Viewpoint Experience Technology (简称VET)是由Metacreation和Intel开发的Metastream技术。Metastream生成的文件格式非常小,三维多边形网格结构具有可伸缩和流传输特性,使得它非常适合于在网络上传输。在结构上,VET分成两个部分,一个是储存三维数据和贴图数据的Mts(Metastream)文件,一个是对场景参数和交互进行描述的基于XML的mtx文件。它具有一个纯软件的高质量实时渲染引擎,渲染效果接近真实而不需要任何的硬件加速设备。VET可以和用户发生交互操作,通过鼠标和浏览器事件引发一段动画或一个状态的改变,从而动态地演示一个交互过程。VET除了三维对象外还犹如一个能容纳各种技术的包容器。它可以把全景图像作为场景的背景。Flash动画能作为贴图使用。
Viewpoint的主要运用市场是作为物品展示的产品宣传和电子商务领域。许多著名的公司与电子商务
网站使用了此技术作为产品展示。我和黑大佬的365天完整版中文翻译
1.4 Cult3D
Cult3D是瑞典的Cycore公司开发的一种跨平台3D渲染引擎。Cult3D使用高效的压缩技术使用户可以通过Internet来访问Cult3D的内容。Cult3D的一个优势是具有很好的跨平台效能,它支持目前主流的各种浏览器、从PC到苹果的各种机型和包括Unix、Linux、Windows在内的各种常用操作系统。它的另一个优势是可以作为元素插入到Word和Acrobat等文档中使用。
Cult3D在表现和交互上和Viewpoint十分相似。和Viewpoint相比,Cult3D的内核是基于Java的,利用Java来增强交互和扩展。Cult3D的开发环境比Viewpoint人性化和条例化,开发效率也高得多。
1.5 Java3D
Java3D API是Sun定义的用于实现3D显示的接口。3D技术是底层的显示技术,Java3D提供了基于Java的上层接口。Java3D把OpenGL和DirectX这些底层技术包装在Java接口中。这种全新的设计使3D技术变得不再繁琐并且可以加入到J2EE、J2SE的整套构架中,这些特性保证了Java3D强大的扩展性。
科技发展的好处 Java3D实际上是Java语言在三维图形领域的扩展,是面向对象的编程,Java语言的简单性为Java3D
的推广提供了便利。它可以实现如生成物体、颜色贴图和透明效果、灯光、事件的处理判断能力、雾和声音等效果、模型变换及动画等功能。
nominal 现在,使用Java3D API技术生成的纯粹的Java3D图形,一定要有插件才能看到。但以后如果完美兼容Java2的话,Java3D也将得到更好的应用。
儿童外教一对一 1.6 Virtools
Virtools是法国公司的产品,是国外专业游戏、3D/VR设计及企划人员广泛使用的软件及开发平台,目前全球已有多家设计公司使用此软件平台开发多样的游戏软件及交互式网页。Virtools之所以会受专业人士采用,是因为利用其完全可视化接口与高度逻辑化编辑方式,轻易地将互动模块加入到一般的3D模块中,非常适合非程序设计出身的设计人员。
蒹葭翻译 Virtools可以输入3DS Max、LightWave、Softimage等3D动画软件所制作的模型,支持JPG、TIFF、TGA、AVI等2D图片和影片格式,支持WAV、MP3等声音文档,也可利用SDK进行二次开发。Virtools制作效果非常好,如国内的虚拟故宫就是采用该技术开发的。
las vegas 1.7 Shockwave3D
Shockwave3D是MacroMedia公司联合Intel公司合作开发的网络多媒体技术。它可以输入3DSMax
、Maya等软件制作的模型,最后得到的文件非常小,在互联网上进行流式传输,能根据电脑的资源自动调整3D内容的品质,并不影响图像的清晰度,只是影响可见的细节水平。
Shockwave3D通过MacroMeadia Director进行制作,由于Director本身是多媒体开发平台,因此Shockwave3D可以和多媒体很好的结合。Director也为Shockwave3D加入几百条Lingo控制函数,通过这些函数,Shockwave3D在交互能力和扩展能力上也具有强大的优势,通过Havok,Shockwave3D可以模拟真实物理环境和刚体特性。但在画面的生成质量上看,Shockwave3D还无法和Viewpoint、Cult3D抗衡,目前多应用在不太复杂的网络游戏上。
1.8 其他技术
基于WEB3D的虚拟现实技术和产品有很多,除了上述技术和产品,市场上还有Pul3D、OpenGVS、Blaxxun3D、Shout3D、B3D、EON、3D WebMaker、3DS Net、AXELedge、DarkBasic、LivePicture、Mu技术等,另外还有国内公司自主开发的如西安赛能的3DVRi,广州维亚的Limn3D,武汉适普的3Dbrowr,杭州光影的inVista等技术。它们在业界和市场上或者有一定影响,或者是著名公司的产品。
2 基于Web3D的仿真应用
随着基于WEB3D技术的发展,出现了各种基于WEB3D的仿真应用。主要应用领域包括(教学仿真、产品仿真、工程可视化仿真、虚拟展示仿真、娱乐仿真等。
2.1 基于Web3D的教学仿真
Web3D技术在教育领域的应用主要包括虚拟教学展示和虚拟实验[3]。
在虚拟教学方面,瑞士皇家技术学院开发了共享型虚拟学习环境CyberMath,用三维立体的方式来表现抽象数学模型,体现了数学科学的内在艺术性。中国第二军医大学现代教育中心人员使用QTVR技术开发了一个胎儿学的网络教学课程,该课程可以让学生在网络上全方位的观察畸形胎儿的标本,从而加深学生理解和认识先天性胚胎发育畸形的原因。中国地质大学利用Web3D技术进行了晶体学研究和教学应用,通过直观演示它们的内部结构,大大加深了学习者对晶体结构的了解。此外,国内外的一些教育资源开发者将Web3D技术结合中小学的地理课程开发了一些关于宇宙天体、火星全景、火山爆发、太阳系运动等漫游型和演示型网络教学课程,这些课程向学生直观地展示了平时无法观察和接触到的自然现象。
我的大学生活 在虚拟实验方面,国内外研究主要包括休斯顿大学和NASA约翰逊空间中心开发的虚拟物理实验室,美国Michigan大学的VRiCHEL(Virtual Reality in Chemical Engineering Laboratory)实验室,美国北卡罗莱纳大学的用户用手操纵分子运动的VR系统,中国科技大学基于Web3D开发的物理实验仿真软件,北京
师范大学现代教育技术研究所研发的三维电子线路实验环境Evlab系统,海军航空工程学院青岛分院自主开发的“电路与电子网上虚拟实验教学系统”,浙江大学研制的基于网上虚拟现实的大学工程化学实验系统等。清华大学的面向网络实验教学的虚拟协同装配技术研究等[4]。
peva
2.2 基于Web3D的产品仿真
虚拟现实在产品仿真中的应用主要有两个方面,一是面向设计人员的,主要用来模拟复杂的建模或装配过程、辅助设计人员对产品进行分析等,另一方面就是直接面向制造商的客户,主要用来向消费者展示产品的外观、性能等。
大连理工大学应用Web3D技术开发了基于网络产品信息发布系统,并以部分电子产品为应用对象,实现了新产品信息发布、浏览产品信息、产品三维模型互动操作展示、产品快速查询、用户信息反馈等功能,用户不仅能从文字、图片了解产品功能,还可以通过互动操作从不同角度观察产品,对产品的属性有一个更加直观的了解]。西北工业大学开发了一套基于网络的交互式虚拟展示系统,并基于该系统展示了医疗设备X光机产品外形、结构和性能仿真效果。