200 likes | 456 Views
虚拟现实构造语言 Virtual Reality Modeling L anguage. VRML 是什么 VRML 的历史 VRML 设计理念 VRML 语言概念 VRML 文件处理过程 VRML 的应用软件 VRML 的解决问题 VRML 的未来 VRML 使用 例子. 一。 VRML 是什么. VRML 是一种用于在 Internet 上构筑 3D 多媒体和共享虚拟世界的开放式语言标准。它具有以下 4 个要点:.
E N D
VRML是什么 • VRML的历史 • VRML设计理念 • VRML语言概念 • VRML文件处理过程 • VRML的应用软件 • VRML的解决问题 • VRML的未来 • VRML使用例子
一。VRML是什么 VRML是一种用于在Internet上构筑3D多媒体和共享虚拟世界的开放式语言标准。它具有以下4个要点: • 开放式标准 : VRML的最新国际标准是ISO/IEC-14772-1:1997。能够被ISO接受这一点就足以说明该标准所处的地位和现实意义,现在,ISO已把它作为未来标准发展的重要模型加以开发和研究。 • 3D多媒体 : 在成为国际标准以前,VRML已经是 CAD、动画制作以及3D建模软件等领域的数据共享 和数据发布的事实上的标准 - 这些软件有的直接 输出VRML格式的文档,有的提供实用工具或插件实现这种变换。
共享虚拟世界 : VRML最早的动机之一就是能够在一个虚拟空间中工作和交谈,这个空间就是虚拟世界(Cyberspace)。通过VRML 97,已经可以部分地实现这一构想。 • 基于Internet : 与以往的3D应用不同,VRML规范考虑的第一件事就是通过Internet共享3D实体和场景。实际上,VRML规范本身就是通过Internet探讨、研究和发布的。
三。VRML设计理念 • 平台独立性 (Platform Independence) • 扩充性 (Extensibility) • 能运作于低频宽的网络上(Ability to work well over low bandwidth connections) 同时,VRML在制定上与HTML有所区别,不被视为HTML的延伸,因为两者不论在资料形式或网络需求上都有所不同。规格制定时避免了将VRML视为HTML的延伸,以免限制了VRML未来的发展 。
四。VRML语言概念 从最抽象化的层次来看,VRML是用节点来实现,而节点可以是立体几何图形、MIDI咨询、JPEG图像等。 • 坐标系统 :VRML采用的是卡氏右手立体坐标系统(Cartesian Right-Handed dimensional System),测量长度和距离的基本单位是公尺,而测量角度的基本单位是弧度。
节点(Nodes) : VRML以节点为基础,每个节点都具有以下四项特性 。 • 节点种类 : 如Box、Cone、Cylinder 等一共有60种节点 。 • 域(Fields) : 节点可以有零或多个域值。 • 节点名称 : VRML中的节点不一定要指定名称但若指定名称则必须唯一。 • 子节点 : 节点与节点之间可以有阶层式的从属关系。具有子节点的节点称为「父节点」;父节点可以有零或多个子节点。
节点的分类 • 形状节点(Shape Nodes) : 指的是几何特性,如圆锥体、立方体、球体等;包含显示ASCII字串的节点。 • 属性节点(Property nodes) : 属性节点会影响节点呈现的方式,又细分为几何属性与外观/矩阵及转换/摄影机/光源四类。 • 群节点(Group Nodes) : 集合其他节点,以单一节点的形式呈現。
域 (Fields) 所含域的数目分为两类 : 只含单一的「单值」与含多个值的「多值」,分別以“SF”与 “MF”为名称的开头。 SF开头的数值只是一个单一的数或数组,而MF开头的是一个数或数组的列表。各有11个和7个种类。 例)SFBool : 开关值 SFFloat/MFFloat : 浮点值 SFString/MFString : 字符串
五. VRML文件处理过程 1。VRML浏览器的处理模型
六。VRML的应用软件 • VRML 浏览器 目前共有四家公司开发出支援VRML 2.0的工具,分別是 : 1)Cosmo Software的 Cosmo Player。 2)InterVista Software Inc. WorldView。 3)Paper Inc. 的 WebFx -后来被 Netscape 公司合并以后改称Live3D。 4)Temlplate Graphics Software Inc.的 WebSpace
VRML 编辑器 目前有较多的编辑器,其中下面的四个编辑器使用率比较高 : 1)Cosmo Software的 Cosmo World。 2)ParallelGraphics的 Internet Space Builder(ISB)。 3)Superscape 的3D Webmaster。 4)Ligos的 V-Realm Builder(VRB)。
七。VRML的解决问题 • 首先是VRML的文件格式。目前VRML采用的是文本格式,文件都很大,而且在很多时候包含大量的空余空间和无用信息。解决办法是为VRML文件定义一种二进制文件格式。这将提供几个优点: • 减少文件长度 : 一个好的压缩软件能把VRML压缩到原来的40%。 • 一定的保密性 : 由于每个人都可以看到文本文件的内容,当采用二进制文件格式时,别人在没有得到允许的情况下不能拷贝VRML场景内容的。
减少调用时间: VRML在第一次加载浏览器时必须被解释以使浏览器能够构造一个内部场景结构。二进制文件更容易被高效解释,因为它包含浏览器构造内部结构的最基本的数据。 • 第二个问题是要解决编码时的便利性。用已存在的编辑器作出较简单的物体时比较容易,但要做比较复杂的形状的物体时不容易。有这样的情况时,一般先用3DMax等软件做完以后,转换成VRML文件。
八。VRML的未来 1995年以来,到1998年中期开始流行VRML将死亡的说法,不过更多的人则开始考虑VRML-NG(新一代VRML),以及VRML与其它3D技术的溶合。总的来说,VRML有以下发展趋势: • VRML继续发展:增加新的节点与功能,如用于数字化地球的GeoVRML,分布式计算的DIS等。 • X3D : 基于XML的VRML-NG,已有提案与演示。 • MPEG4 : 用于数字化影视的新技术,基于VRML。 • VRML2002 : X3D与VRML溶合的产物,并希望在2002年通过ISO认证。
九。VRML 使用例子 基本造型的例子 (1.25k,92行) 加动作的例子 (9.40k,369行) 加触点的列子 (3.39k,81行) 换视点的例子 (13.6k,742行) 一间屋子 (376k,13891行) 茶叶博物馆(515k,19508行)