web3d即虚拟展示技术,通常被用于商品网络化三维展示,也有部分小场景虚拟仿真项目采用WEB3D进行制作3D图形技术并不是一个新话题,它在图形工作站以至于PC上的应用早已瓜熟蒂落。然而互联网的出现,却给3D图形技术注入了新的活力,一些微妙而深刻的变化正在进行中。“web3d”这一新词的出现就反映了这种变化的全貌。没有人严格定义web3d,但我们可以把它理解为互联网上的3D图形技术。
VRML是3D图形和多媒体技术通用的交换文件的格式,它描述交互式的3D对象和场景的几何对象的尺寸和形状、色彩、材质、灯光、动画及其交互性。它不仅应用在互联网上,也可以用在本地客户系统中,其应用范围极广。国际上有一个VRML(VRML Consortium)协会,承担起了制定互联网上的3D图形标准与规范的任务。1996年,VRML 1.0发布,1997年,VRML 97诞生。VRML 97的重大革新是:在网络上传输的是模型文件,而不是视频图像文件,故其传输量大大减小,可使任何一个3D图形爱好者都能制作可在互联网上实时渲染的3D场景模型。
然而,在1997年之后,VRML在3D图形标准上的进展缓慢,远远没有达到人们的期望。究其原因主要有:
● 互联网对3D图形的需求并不迫切,到目前为止,2D图像仍在HTML文件中占主导地位。
● 网络带宽仍然是制约网上3D图形发展的主要瓶颈。
● VRML 97过于庞大,它几乎包罗万象。
● 网站的访问者必须先花费10~15分钟的时间下载插件,然后再像安装软件那样安装这个插件,才能观看一个十分粗糙的3D图形。
产品群雄割据 用户苦不堪言
由于VRML协会没有及时推出VRML 97的下一代标准,因此很多互联网3D图形的制作软件并没有完全遵循VRML 97标准,许多公司推出了自己的制作工具,使用专用的文件格式和浏览器插件。类似的软件大约有30种之多。这些软件各有特色,在渲染速度、图像质量、造型技术、交互性以及数据的压缩与优化上都有胜过VRML之处。所有的公司都希望自己的解决方案能成为“事实上的国际标准”。
然而用户却不领它们的情。对用户而言,要在互联网上观看用这些软件制作的3D图形,先要下载1M~7MB的插件,然后安装在网页浏览器上。插件的种类之多,使人无所适从。要观看十个不同的网站,用户就需要下载并安装十个不同厂家的插件。这样烦琐的事情用户实在难以忍受。
为什么需要插件?
3D图形软件为什么离不开插件?其实插件就是实时渲染引擎,其作用是:解释并翻译实施场景模型文件的语法,实时渲染从服务器端传来的场景模型文件,在网页访问者的客户端逐帧、实时地显示3D图形。把实时渲染引擎做成一个插件,这是互联网3D图形软件厂商目前的通常做法。显然,实时渲染引擎是实施互联网3D图形的关键技术,它的文件大小、图形渲染质量、渲染速度以及它所能提供的交互性都直接反映了其解决方案的优劣。
研制更好的实时渲染引擎是各软件厂商竞争的焦点,于是就产生了五花八门的3D图形文件格式与相应的浏览器插件。
结束这种混乱局面的最好办法是微软在其IE浏览器中预装一个或几个实时渲染插件,这样用户就不必花费十多分钟的时间去下载和安装插件。然而,微软并未选中任何一家公司作为其合作伙伴,也许有一天微软会推出自己的一整套解决方案,从而保持它在互联网3D图形领域中的霸主地位。
新一代互联网3D图形
标准X3D诞生
1997年,VRML协会改名为web3d(Web 3D Consortium),此后web3d这一专用缩写开始在互联网上出现。2001年8月,web3d协会发布了新一代国际标准——X3D (X3D的含义是可扩展的 3D)。
X3D得到了许多软件厂商的支持,包括3Dlabs、ATI Technologies、Blaxxun、Nexternet、OpenWorlds、ParallelGraphics、Sony Electronics、US Army STRICOM、SGDL Systems等。X3D与MPEG-4和 XML兼容,并将集成到MPEG-4的3D内容之中,使用XML语法。它与VRML 97向后兼容,即X3D能提供标准VRML 97 browser的全部功能。X3D的主要任务是把VRML的功能封装到一个轻型的、可扩展的核心之中。由于X3D是可扩展的,因此任何一个开发者都可以根据自己的需求,扩展其功能。X3D渲染引擎的商业版本也在去年的SIGGRAPH ’2001的年会上推出,Parallel Graphics(web3d技术的领先软件公司)将联合几个公司开发X3D 新技术。
X3D标准为互联网3D图形的发展提供了一个广阔的发展前景,无论是小型的具有3D功能的web客户端应用,还是高性能的广播级应用,X3D都应该是大家共同遵守的一个标准,从而结束当前互联网3D图形的这种混乱局面,在统一的X3D基本框架下保证不同软件厂家开发的软件具有互操作性。
采用Java,3D图形渲染不需要插件
Java在互联网上几乎随处可见,而它在3D图形上正在显示出更大的威力。使用Java 的重要理由之一是它的平台无关性。它的平台无关性来自于Java只需部分编译。负责编译Java程序的是Java Virtual Machine (JVM),不同的平台有它自己的JVM,处理与平台相关的功能。因此,只要支持JVM,就能运行Java小程序。两种最有名的浏览器Netscape 和 IE都支持JVM。因此用Java制作的3D图形几乎可以在所有的互联网浏览器上显示。
Shout Interactive和Blaxxun两个公司使用纯Java技术开发了实时渲染引擎(大小只有50K),这个小小的Java小程序,不仅在网上自动下载,而且可以在客户端实时渲染3D场景,逐帧显示动态的3D图像。Shout Interactive和Blaxxun为用户扩充自己的3D图形功能预留了极大的空间。两个公司并没有抛弃VRML,Shout Interactive公司可以接受VRML文件,并把它变成自己的文件格式;Blaxxun公司的软件可以直接运行VRML。当然,Shout Interactive 3D的小巧灵活并不是没有代价的:它简化了VRML的功能,VRML的一些功能不能用小小50K的Java来实现。可以说这两个公司最先在它们的产品中实现了核心的X3D技术。
使用这种“无插件技术”(plug-in)的Shout Interactive公司为Macy’s and Excite web portal网站制作了栩栩如生的3D虚拟时装模特展示。而所有的展示文件只有1M~2MB,不需下载插件,且图像的质量较好,人物动画的动作流畅自然。
X3D能否成为事实上的web3d图形标准?
Flash之所以能作为2D动画在互联网上的标准,关键是只有惟一的技术和标准。而现在的web3d图形有几十种可供选择的技术和解决方案,多种文件格式和渲染引擎的存在是web3d图形在互联网上应用的最大障碍,而这种局面在今后若干年还将存在。从现在的发展态势来看,有几种技术可能在未来占有一定的优势:
● X3D: 由Web 3D Consortium制定,得到大学、政府机构及一些web3d图形公司的支持,有比较广泛的社会基础。
● Pulse3D: 在游戏娱乐领域内领先,使用该技术的游戏网站有100多个,它得到了Discreet和Entertaindom公司的资金支持,现在它正在把游戏领域的技术优势应用到e-commerce。它的插件支持QuickTime 5和RealPlayer。
● Viewpoint: 前身是MetaCreations(3D图形应用软件开发商),它卖掉了其他所有的软件产品后,改名为Viewpoint,并专们从事web3d图形技术的研发。其渲染引擎的模块化结构极易扩充,并且能与QTVR-、iPix-和XML-等标准集成。它的目标是e-commerce。该技术的最大特色是与XML集成。
● Cult3D: 开发了e-commerce的全套解决方案,已经有450个e-commerce网站使用了 Cult3D技术,有近1万个商业模型。它也在向娱乐领域扩充,提供全面解决方案,同时提供最稳定可靠的渲染引擎。
● Shockwave3D: 这是Macromedia公司的Flash插件,有着极为广大的用户群(据说世界上有1.3亿人安装),更引人注目的是Intel把它的web3d图形集成到Shockwave中。Intel web3d的图形极具特色:动态调节3D内容的分辨率,采用了曲面光滑技术和照片级逼真材质,并可制作各种特色效应。