Google O3D API

Posted by Mr. Saturday

Google Code LabsGoogle Codes 今天發表了 O3D API,目的是讓使用者可以在瀏覽器裡面開發互動式的 3D 應用程式,就跟 Flash 一樣,如果使用者要看 O3D 開發出來的應用程式,需要去下載一個小小的 O3D plug-in,在網際網路上面開發 3D 立體的應用程式一直沒有真正共通的標準,相信這一套 API 也是 Google 為了建立網路上 3D 應用程式的開發標準所做出的努力之ㄧ。不同的是,使用這一套 API 只要會 JavaScript 就可以了,因此我個人認為這是 Google 對於開發者來說非常重要的一個產品。首先我們先來看看 demo 影片:

從下面的 demo 影片來看,動畫品質的確是非常的棒。

根據我自己實際測試的結果,3D 效果真的非常的好,不過目前對於顯示卡的支援還很有限,如果讀者沒有辦法看到這些範例程式的話,有可能是顯示卡還不被支援的關係。為此 Google 也在 http://code.google.com/apis/o3d/docs/gettingstarted.html 列出了已經通過測試的顯示卡晶片,3D 程式果然很耗運算資源。底下這個乒乓球遊戲用鍵盤操作,甚至可以用滑鼠滾輪拉近或是拉遠視角:

o3d

Google 也為了這個 API 提供了大量的範例,包括了遊戲、材質、陰影、動畫、場景等等效果現在都可以透過這一套 API 和 JavaScript 來實現。demo 影片裡的檔案非常大,有 18 MB,如果讀者要下載自己跑跑看的話,需要有心理準備。

這套 API 重要性在於開發者只要熟悉 JavaScript (見下面的架構圖),開發 3D 程式就不是問題,同時這一套 API 也同樣是融入了 Google 龐大 API 家族的一部份,未來跟其他 API 的整合應用相當令人期待,網路上包括 Maps API 和 iGoogle API 等等,都有無限的想像空間。早期許多建立 Wed 3D 的標準努力至今沒有獲得很大的迴響或是一致認同,這一次 Google 用自己平台已經有的許多資源,相信推行起來會有相當大的衝力。

程式設計沒有真正跨平台這件事情,只是看你怎麼把不同底層的東西包裝起來,提供統一的介面給開發者使用,這一套 API 做到了

當然,為了海納百川,將市面上既有的一些 3D 格式融入,Google 也提供了介面讓你可以從 Autodesk 3ds Max, Maya, 和 Google SketchUp 等等不同的地方把他們產出的內容 (COLLADA 格式) 匯入到你的應用程式之中。相信之後會支援更多不同的格式匯入。

Google 對於將自己定義為一個運算平台,透過這一套 API,又跨出了相當大的一步。

喜歡這篇文章嗎? 分享出去給作者一點鼓勵吧!