第一講 X3D概述及安裝配置
本講主要講述X3D的概述、X3D的編輯器及其安裝配置。
一、 X3D的概述
<!-- frame contents -->
<!-- /frame contents -->
“Web3D”一詞出自Web3D聯盟(Web3D Consortium (W3DC)),其前身是VRML聯盟。該組織先後提出了VRML1.0 ,VRML2.0和VRML97 規范。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 之間的沖突。
Web3D聯盟計劃於2003年10月份向國際標准組織提請標准申請,x3D將正式成為國際通用標准。進入討論組討論。
二、 X3D的編輯器--X3D-Edit X3D-Edit 是圖形化 Extensible 3D (X3D) 文件編輯器。X3D-Edit 通過 X3D 3.0 DTD 定義的 X3D 3.0 tagset 標簽集來定制 Java 平台下的通用 XML 編輯器,並使用 IBM Xeena 為定制的 X3D 場景圖編輯器。
在編輯 VRML 或 X3D 場景圖文件時,X3D-Edit 可以提供簡化的無錯的創作和編輯方式。X3D-Edit 通過 XML 文件定制了上下文相關的工具提示,提供了每個節點和屬性的概要,以方便作者對場景圖的創作和編輯,如下圖所示。
<iframe src="/uploadImages/2007-5-2/20075212413474746.jpg" frameBorder=0 width=590 scrolling=yes height=400></iframe>
(圖片較大,請拉動滾動條觀看)
X3D-Edit 具有下列特性:
1、直觀的圖形化的用戶界面
2、建立符合規范的場景圖文件:節點總是放置在合適的位置
3、驗證 X3D 場景是否符合 VRML 97 概貌或 Core 概貌
4、自動轉換 X3D 場景到 VRML 並啟動浏覽器自動察看結果
5、VRML97 文件的導入與轉換
6、大量的 X3D 場景范例
7、每個元素和屬性的彈出式工具提示,幫助了解 VRML/X3D 場景圖如何建立和運作,包括中文在內的多國語言提示。
8、使用 Java 保證的平台通用性
9、使用擴展樣式表 (XSL) 自動轉換:X3dToVrml97.xsl(VRML97 向後兼容性)、X3dToHtml.xsl(標簽集打印樣式)、X3dWrap.xsl / X3dUnwrap.xsl (包裹標簽的附加/移除)
10、支持 DIS-Java-VRML 工作組測試和評估 DIS-Java-VRML 擴展節點
11、支持 GeoVRML 節點 和 GeoVRML 1.0 概貌
12、支持起草中的 H-Anim 2001 人性化動畫標准 和替身的 Humanoid Animation 人性化動畫節點的編輯,同時也支持 H-Anim 1.1 概貌
13、支持新提議的 KeySensor 節點和 StringSensor 節點。
14、支持提議的 Non-Uniform Rational B-Spline (NURBS) Surface 擴展節點的評估和測試
15、使用標簽和圖標的場景圖打印進入討論組討論。