推荐给好友 上一篇 | 下一篇

X3D中文简单教程-X3D简介

一、X3D-Edit安装配置

二、文本的显示

三、X3D2D图形的构造

四、基本3D图形的创建方法

五、立体造型的几何变换

六、视点和导航的设置

七、场景的光照效果

八、纹理映射

九、X3D场景的多媒体效果

十、X3D的动画效果

十一、X3D的交互技术

十二、X3D的嵌入脚本编程技术

十三、X3D的嵌入脚本Java编程技术

十四

 

 

 

X3D 简介

互联网的出现为3D图形技术的发展注入了活力,在X3D(Extensible 3D)之前市场上出现了为数众多的互联网3D图形软件,这些图形软件遵循各自的技术规格,让用户感到无所适从和难以忍受。Web3D联盟发布的新一代国际标准X3D有望结束这种混乱的局面,X3D所具有的高度可扩展性可使开发人员根据自己的需求来扩展其功能,同时X3D整合了Java 3D、流媒体、XML等先进技术使其具备了技术优势,可以断言X3D必将为互联网3D图形的发展提供一个广阔的发展前景。

“Web3D”一词出自Web3D联盟(Web3D Consortium (W3DC)),其前身是VRML联盟。该组织先后提出了VRML1.0(1994.10) ,VRML2.0(1996.8)和VRML97(1998.1) 规范。VRML规范支持纹理映射、全景背景、雾、视频、音频、对象运动和碰撞检测。但由于网络瓶颈、用户需求以及本身技术等原因,VRML技术的进展远没有达到预期。

1998年VRML联盟改名为Web3D联盟,年底提出新的标准X3D(Extensible 3D),又称为VRML200x 规范。2000年春,Web3D 联盟完成了VRML到X3D的转换。X3D整合正在发展的可扩展标记语言(Extensible Markup Language ,简称XML )、JAVA、流技术等先进技术,包括了更强大、更高效的3D计算能力、渲染质量和传输速度。

所谓X3D标准就是XML标准与3D标准的有机结合,X3D被定义为可交互操作,可扩展,跨平台的网络3D内容标准。

X3D 是 VRML的继承。VRML(Virtual Reality Modeling Language - 虚拟现实建模语言)是原来的网络3D图形的ISO标准(ISO/IEC 14772)。X3D 相对VRML改进,提供了以下的新特性:

1、3D 图形 - 多边形化几何体、参数化几何体、变换层级、光照、材质、多通道/多进程纹理帖图

2、2D 图形 - 在3D变换层级中显示文本、2D矢量、平面图形

3、动画 - 计时器和插值器驱动的连续动画;人性化动画和变形

4、空间化的音频和视频 - 在场景几何体上映射视听源

5、用户交互 - 基于鼠标的选取和拖曳;键盘输入

6、导航 - 摄像机;用户在3D场景中的移动;碰撞、接近和可见性检测

7、用户定义对象 - 通过创建用户定义的数据类型,可以扩展浏览器的功能

8、脚本 - 通过程序或脚本语言,可以动态的改变场景

9、网络 - 可以用网络上的资源组成一个单一的X3D场景;可以通过超链接对象连接到其他场景或网络上的其他资源

10、物理模拟 - 人性化动画;地理化数据集;分布交互模拟(Distributed Interactive Simulation - DIS)协议整合

在2002年3月份 X3D 第一版发布以来,已经有基于Java的源码开放的网络3D软件问世。因此,Web3D联盟在制定标准时成立了Java 语言翻译工作小组以便允许Java 程序能够与新的3D标准程序相协调。这也最终结束与Sun的网络3D技术Java3D technology 之间的冲突。

缩写X3D 就是为了突出新规范中VRML与XML的集成 。X3D 采用XML编码,以软构件技术为指导,定义了一个小型运行内核、一组API 和多个扩展集,具有小型化、可扩展、与Web上的多种标准互操作和与多种媒体紧密集成等特性。

X3D整体结构包括四个部分:内核(核心特性集),VRML97 特性集,应用程序接口和扩展集。特性集是VRML元素的一个子集,是满足特定用户需求的一组功能的集合。

l 内核(核心特性集):定义了VRML 中最关键的特性,形成核心构件,并将其封装为一个小型的、可扩展的内核。规范规定内核实现的大小应在Flash和RealPlayer之间,可被用户快速下载,运行时占用很少的系统资源。当前的核心特性集已确定只实现VRML97 的54 个节点中的23个节点。

l VRML97 特性集:实现内核以外的VRML97 元素。VRML97 的节点被设计为可插拔的构件,通过扩展内核,完整的实现了VRML97 规范定义的功能,从而确保了X3D与已有的VRML 应用兼容。

l 应用程序接口:X3D 是描述几何体和行为的一种文件格式,由于使用XML 编码,文档对象模型(DocumentObject Model ,简称DOM )[4]自动为X3D 提供了一组API ,外部应用程序可以通过DOM 访问X3D 文件;作为另一个选择,场景创作接口(Scene Authoring Interface ,简称SAI )是来自VRML 自身的场景图像接口,它将外部创作接口(External Authoring Interface ,简称EAI )和VRML97 规范中的脚本接口(Script )融合,为外部或内部编程提供了一个单一的编程接口。最新的SAI 草案正努力提出一个将DOM 和SAI 合并的统一接口[5]。

l 扩展集:通过在内核之上进行特性集扩展,实现复杂的或是用户自定义的功能。用户可以在内核之上建立一个完整的VRML97 特性集。也可以添加其它的扩展,如NURBS 扩展,二进制文件格式扩展等。通过扩展还可以利用VRML97 规范中未定义的新的硬件渲染技术。构件化的设计为X3D 的内核提供了一种插件机制,允许扩展功能被实时的加入运行内核。

X3D标准由XML、X3D文件格式和一个3D引擎组成。X3D沿袭了VRML97的节点、域、域值的结构,并且将兼容VRML97标准,除此以外X3D还兼容MPEG-4格式。3D引擎基于Java Applet,无论是文字、图片还是声音都可以方便地与3D内容结合,而无需安装专用的插件就可以在浏览器中观看。

一个X3D文件包括header(头部说明)、scene graph(场景图)、prototypes(模型)和event routing(事件路由)等功能组件,通过X3D浏览器表达成真实的3D场景。

X3D/VRML文件格式有:

 .x3d X3D XML 编码
 .x3dz gzip 压缩的 X3D XML 编码
 .x3dv X3D VRML classic 编码
 .x3dvz gzip 压缩的 X3D VRML classic 编码
 .wrl 非压缩或 gzip 压缩 VRML97 格式
X3D的关键技术有:XML编码、构件模型。

2004年8月,X3D已被国际标准组织ISO批准通过为国际标准ISO/IEC 19775(http://www.web3d.org/index.html)。


 

评分:0

我来说两句

seccode