基于X3d 的虚拟现实技术建

    模王辉++宋昌统

    摘要:随着中国经济的不断进步,人们生活水平的不断提高,出现了一种新型的计算机核心技术,称为虚拟现实(Virtual Reality)。这种技术的兴起,将成为整个计算机行业的核心价值,在迅速发展的21世纪,X3D虚拟现实技术是最值得关注的新型的计算机技术,可谓是最高科技的成果之一。在此基础上,我们通过对X3D虚拟现实技术的分析和探讨,较为细致地了解这种技术的组成,并且找到提升技术的方法,对整个中国的发展具有深刻的意义。

    关键词:虚拟现实;X3D;建模

    中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2016)11-0238-02

    在网络快速发展的今天,虚拟现实已经被应用到了多个方面,在人们的日常生活中占有一定的地位,主要应用在教育、卫生、军事、科研、医学、体育等等方面。虚拟现实系统主要是由一些硬件设备和一些软件设备组成的,包括3D的立体眼镜以及带有数据的头盔,还有一些软件,比如VRML、OpenGL、Java3D、X3D 等等。而X3D则是虚拟现实中的一种软件组成,就是一种对网络上三维物体的描述。X3D本身就具有一定的灵活性和实用性,对于自身的扩展也很大。

    1 虚拟现实技术

    1989年美国的Jaron Lanier提出了虚拟现实(VR)并且把其制作成商品进行销售,他是美国公司 VPL Research 的创始人。虚拟现实技术通俗来说就是通过计算机软件搭建出来的虚拟的东西和环境,通过专业的设备对其进行一定程度上的改革,构建出的场景,这种技术可以很好地让人们感受不一样的网络世界。比如我们都曾看过的3D电影《飞屋环游记》,通过特殊的3D眼镜,让我们仿佛置身于电影中一样。3D电影就是虚拟现实的一种。虚拟现实融合了许多技术,比如说计算机仿真技术,人工智能技术,多媒体技术,传感技术,计算机图形学技术,网络技术,人机接口技术等等。它的特点总结起来就是三点,分别是交互性(Interaction),想象力(Imagination),以及沉浸感(Immersion),简称3i。目前的虚拟现实是由两部分组成的,软件组成:虚拟现实软件X3D(可扩展 3D)、VRML(虚拟现实建模语言)、Java3D、OpenGL、Vega、Converse3d、3DMAX、Maya 等。硬件组成:立体投影、立体眼镜、三维头盔显示器、数据手套、三维语音识别系统、三维空间跟踪定位器、三维空间交互球、多通道环幕系统等。

    2 X3D 的组成

    1998年Web3D 联盟正式提出X3D(Extensible 3D)。在这项技术得到了很多家公司和科研机构的认可和支持,在一定程度上促进了每个公司的发展。X3D技术为了方便在网络和浏览器传输上更加的方便,于是采用了 XML 语言,进而对其进行描述。通过与Java、XML、流媒体等技术的融合,在表现上更加的完美。具有更加完善的技术。X3D 系统结构是以组件技术为基础的。 包括内核,VRML97 特征集,应用程序接口和扩展集四个部分,如图 1 所示。

    内核(Core)最主要的核心的特点就是有很好的扩展性,大小也刚刚好,占用的空间也不是很大,内核的核心主要是由VRML97的一小部分组成的,只用到了54个节点中的23个。而剩下的31个节点则全部做成了插拔的组件,在一定程度上能够使 X3D对VRML进行兼容并且提高系统的运行效率。X3D的应用程序接口是由文档对象模型 (Document Object Model ,DOM)和XML 编码提供的,而对于外部应用程序则是要通过 DOM 访问 X3D 文件才能完成。在此基础上,X3D 内外部场景是通过内部创作接口(Script Authoring Interface ,SAI)与外部创作接口(External AuthoringInterface ,EAI)动态交互形成的。内部创作接口对 X3D 内外部场景交互是通过JavaScript 语言编写脚本或者利用Java来实现的。外部创作接口被称作是 Java 语言定义的一系列类包。外部应用程序如果要对VRML场景进行改正或者控制,再或者进行一系列的操作,那么就需要通过访问这些类包来实现。

    3 X3D场景建模

    3.1 X3D节点建模

    (1)X3D文件结构X3D 文件结构采用 ISO/IEC 19775-1 的 7.2.3, Abstract X3D structure 中的定义。X3D 文件结构包括 X3D 文件头、文档类型(DTD 格式)及 X3D 主程序概貌等内容。 X3D 主程序概貌包括头文档和场景。 头文档包括组件和元数据。 X3D 场景包括各种节点。 通过组织各种节点来创建虚拟的三维场景。 X3D 的文件结构如图 2 所示。

    (2)X3D 的语法结构

    根据ISO/IEC 19775-1的规定X3D 文件头需要是一个单行的 UTF-8 文本,这样才能识别是一个XML 文件。X3D文档在使用时属性要在规定的概貌集合的范围内。Geometry3D 组件是所有的三维几何节点组成的,对于这种功能相同的节点的组成就叫做组件。 X3D 场景主体由一对<;Scene>;和<;/Scene>;组成的,中间可以插入背景节点、视觉节点、导航节点、集合节点、复杂造型节点等,通过这些节点的组织来创建要表示的三维空间的场景和造型。

    3.2 场景的优化

    场景模型优化在搭建虚拟场景时,很多时候我们必须要抛开一部分的真实性。这样的情况下,贴图的办法就比较可行,应用绘图软件或者是已有的图片、建筑物的各个方面的照片。对于纹理贴图来说,格式一定要为 RGB,单位为像素,宽与长要控制在2的幂。为了提升场景的运行速度,最好是把所有面都放在同一个文件里。为了要营造真实的感觉,还应该加上光照,在一定程度上通过光照来营造真实的感官。除了这些,最主要的就是对纹理的处理,为了达到预想的效果,最重要的就是使用面积比较小的纹理,这样占用的空间也比较小。

    复用件外部和内部的复用是X3D 的复用技术的两个方面。文件外部的复用就是根据一定的顺序进行渲染绘制,按照从大到小,从左到右,从上到下、从右到左、从下到上的顺序进行渲染,有层次的进行。而文件内部的复用则是可以先对节点进行一定程度上的预定,在使用时,就不需要在进行整改,直接可以用上,不用在对其进行编辑。X3D 为了方便编写的工作,还可以进行自定义新的节点。

    文件压缩压缩二进制编码的开发为X3D有效的提供了一个特殊的环境,在安全为提前的基础之下,X3D具有高压缩比和加密性。在这样的基础上,X3D二进制格式也拥有了这两种环境。X3D 允许采用浏览器支持的多种编码模式进行混合编码,解析时只需要按照特定浏览器需要进行解析即可。

    4 结束语

    本文通过对虚拟现实中的X3D的系统结构进行分析和讨论,对场景的优化和建模都有了新的方法。根据对实验的研究,我们知道为了方便和适合计算机网络的下载或者是运输,制作出来的场景的体积要普遍较小,基本的模型要在1k左右。由于支持的节点比较多,所以在建模与交互两个方面都显得容易些,在Java 语言的支持和与 XML 语言的结合方面,都有不同的表现。

    参考文献:

    [1] 刘永安,高素青,杨磊.基于X3D的虚拟场景建模技术[J].电脑知识与技术,2009(22):6271-6273.

    [2] 徐雷,赵立科,李成.基于X3D的大规模三维地形场景构建[J].矿山测量,2008(5):43-45+4.

    [3] 王志强,蔡平.基于X3D的虚拟环境建模的应用研究[J].福建电脑,2008(11):109,141.

相关文章!
  • 融合正向建模与反求计算的车用

    崔庆佳 周兵 吴晓建 李宁 曾凡沂<br />
    摘 要:针对减振器调试过程中工程师凭借经验调试耗时耗力等局限性,引入反求的思想,开展了

  • 浅谈高校多媒体教育技术的应用

    聂森摘要:在科学技术蓬勃发展的今天,我国教育领域改革之中也逐渐引用了先进技术,如多媒体技术、网络技术等,对于提高教育教学水平有很

  • 卫星天线过顶盲区时机分析

    晁宁+罗晓英+杨新龙<br />
    摘 要: 分析直角坐标框架结构平台和极坐标框架平台结构星载天线在各自盲区状态区域附近的发散问题。通过建