設計
WebGL 1.0基於OpenGL ES 2.0,並提供了3D圖形的API。它使用HTML5Canvas並允許利用文檔對象模型接口。WebGL 2.0基於OpenGL ES 3.0,確保了提供許多選擇性的WebGL 1.0擴展,並引入新的API。可利用部分Javascript實現自動存儲器管理。
歷史
WebGL起源於Mozilla員工弗拉基米爾·弗基西維奇的一項稱為Canvas 3D實驗項目。2006年,弗基西維奇首次展示了Canvas 3D的原型。2007年底在Firefox和Opera被實現。
在2009年初,非營利技術聯盟Khronos Group啟動了WebGL的工作組,最初的工作成員包括Apple、Google、Mozilla、Opera等。2011年3月發布WebGL 1.0規範。截至2012年3月,工作組的主席由肯·羅素(Ken Russell,全名“Kenneth Bradley Russell”)擔任。
WebGL的早期套用包括Zygote Body。
WebGL 2規範的發展始於2013年,並於2017年1月完成。該規範基於OpenGL ES 3.0。首度實現在Firefox 51、Chrome 56和Opera 43中。
開發狀況
WebGL和3D圖形規範OpenGL、通用計算規範OpenCL一樣來自Khronos Group,而且免費開放,並於2010年上半年完成並公開發布。Adobe Flash Player 11、微軟Silverlight 3.0也都已經支持GPU加速,但它們都是私有的、不透明的。WebGL標準工作組的成員包括AMD,愛立信,谷歌,Mozilla,Nvidia以及Opera等,這些成員會與Khronos公司通力合作,創建一種多平台環境可用的WebGL標準,WebGL標準在2011年上半年首度公開發布,該標準完全免費對外提供。
作用
WebGL完美地解決了現有的Web互動式三維動畫的兩個問題:第一,它通過HTML腳本本身實現Web互動式三維動畫的製作,無需任何瀏覽器外掛程式支持;第二,它利用底層的圖形硬體加速功能進行的圖形渲染,是通過統一的、標準的、跨平台的OpenGL接口實現的。
最新情況
WebGL標準已出現在Mozilla Firefox、Apple Safari及開發者預覽版Google Chrome等瀏覽器中,這項技術支持Web開發人員藉助系統顯示晶片在瀏覽器中展示各種3D模型和場景,未來有望推出3D網頁遊戲及複雜3D結構的網站頁面。
據國外媒體報導,在2013年,一段諾基亞N900手機使用移動版Firefox軟體演示WebGL標準的視頻在網上流傳,引起了許多手機用戶的關注。
從視頻中可以看到在展示網頁中的3D模型及使用觸控屏操作的過程非常流暢,這表示WebGL標準已經支持手機瀏覽器套用。在2013年之前,手機 用戶上網瀏覽多媒體網頁仍受手機硬體、瀏覽器以及網速等方面限制導致體驗不佳,如果WebGL標準能在手機上普及套用,將使手機網路服務得到快速地發展。
2011年3月,多媒體技術標準化組織Khronos在美國洛杉磯舉辦的遊戲開發大會上發布WebGL標準規範 R 1.0,支持WebGL的瀏覽器不藉助任何外掛程式便可提供硬體圖形加速從而提供高質量的3D體驗。 WebGL標準已經獲得了業界大佬們的支持: Apple (Mac OS Safari nightly builds),Google (Chrome9.0), Mozilla (Firefox4.0 beta)和Opera (preview build)。
2012年4月,Google搜尋悄然上線了一個新的功能,那就是在搜尋框裡輸入一個曲線方程,那么Google就會在搜尋頁里為你畫出這個曲線!這也是WebGL第一次被套用在Google的搜尋引擎中,使用者可以在搜尋框裡輸入任意一個二元方程,Google都會將此方程繪製出來,並且是顯示在全3D的空間中,另外還可以自由調整和編輯曲線以及方程。
如果想要臨時查看一個方程的曲線,而周圍又沒有專業軟體的時候,你可以應急使用一下Google的這個貼心新功能!不過要注意的是,這個功能只能運行在支持WebGL瀏覽器中,例如Chrome和Firefox,而不是IE!
2013年4月1日,國外開發者Francois Remy在泄露版Windows Blue附帶的Internet Explorer 11中發現,WebGL接口已經封裝完成,但功能上還未能開放支持。在這之後,另一名開發者Rafael Rivera繼續深入挖掘,竟然發現了在此版本的Internet Explorer 11中開啟WebGL支持的方法。這正是四年盤踞龍虎鬥,微軟終將入大流!歡迎IE 11加入WebGL大家庭!