【網海觀查】Google 發表跨平台 O3D Web 瀏覽器 3D 技術
2009/04/23 12:41 pm droger
上個月 Mozilla 與 OpenGL 繪圖技術組織 Khronos 宣布,將針對網頁上的 3D 顯現技術合作,而具體成果也已經可以在 Canvas 3D JS Library (C3DL) 網站當中看出方向,而現在 Google 也針對其在瀏覽器市場上的佈局發布了稱為 O3D 的跨平台開放原始碼瀏覽器外掛程式,不同於 C3DL 目前的狀態,最新的版本必須在 Firefox 3.5 beta 版以上,才能夠呈現的情形, O3D Plugin 可以在 Windows 、 Mac 上跨多種平台及瀏覽器使用, Linux 平台上雖然暫時沒有原生二進制版本可以使用,但也提供了編譯使用的方法



在 O3D 提供給程式設計師們了解的 API 介紹網站中,也提供了幾個 3D 相關的範例,目前在 Mac 平台上的使用狀況, Safari 4 beta 的運作比起 Firefox 3.0.x 的狀況來得順利許多,不過有個森林的場景可能因為物件龐大太過複雜,在 Macbook Intel GMA950 的整合晶片環境中,即使是使用 Safari beta 4 ,運作的狀況還是很吃重,如果不是有獨立顯示卡的用戶,建議不要跑這個範例。



不過幾個範例當中,除了 3D 場景的示範之外, Google 也有提供了一個類似超級瑪莉的西洋武士 3D 版網頁遊戲,讓人可以了解到, O3D 讓網頁上直接運作 3D 遊戲的功能。



而 O3D 的技術運用,在 Google 關於 O3D 的 Technical Overview 當中有介紹,大致上可以了解,應該是與 Chrome 的 Javascript V8 引擎的技術概念有關,透過 O3D 的 Plugin ,將基於 Google O3D API 技術的 Javascript 重新編譯成符合 OpenGL/Direct3D 規範的 C/C++ 程式碼,然後再透過 GPU 顯卡加速運作。



然而 O3D 要怎麼透過 Javascript 來表現 3D 場景或環境的描述呢?在 O3D 的技術介紹當中有提到, 3D 相關的軟體,只要匯出成為 Collada 這個基於 XML Schema 標準的開放格式之後,再透過 Google 提供的 O3D 轉換程式,即可轉為 Javascript 基礎的交換格式。

O3D 的出現,對於 Google Earth、Google Sketchup 的整合來說,是有其必要性,不過現在近年來推出 Web 3D 的技術,除了原先最常被提起的 Flash Papervision3D 、 Mozilla C3DL ,到現在 Google的 O3D ,更別提更早的 VRML 技術,所以距離 Web 3D 標準的出現應該還有一段距離,但是 O3D 的優勢在於, Google 已經有許多相關的既成服務和基礎,從 Chrome V8 Javascript 加速引擎的底層,支援 Collada 的 Google Sketchup ,和帶有豐富地理資訊的Google Map/earth,這些資源互相搭配運用的背後,對於開發者來說都是有相當大的吸引力,也可以說這些都是目前 O3D 與生俱來就擁有的龐大優勢資源。