WebGL概論(webgl 原理)
什么是WebGL
簡單來講,WebGL是新一代Web上的3D圖形規(guī)范,是屬于HTML5技術(shù)大家族的一員,雖然沒有寫在官方的HTML5上,但大部分現(xiàn)代瀏覽器都支持WebGL。
WebGL未出現(xiàn)之前,我們?yōu)g覽器只能完成有限的2D體驗。開發(fā)者必須依靠插件或安裝下載相關(guān)軟件來實現(xiàn)3D體驗。WebGL的出現(xiàn),將使傳統(tǒng)的2D網(wǎng)絡(luò)體驗邁向豐富動人的3D體驗。
技術(shù)定義
WebGL標準是由科納斯組織開發(fā)和維護的,該組織還管理著OpenGL、COLLADA等圖形標準規(guī)范。WebGL的官方定義是這樣的:
>WebGL是免授權(quán)費的,跨平臺的應(yīng)用程序接口API,它將OpenGL ES2.0作為在HTML網(wǎng)頁內(nèi)的3D繪圖環(huán)境,作為低級別文檔對象模型接口開放。它使用OpenGL渲染語言GLSL ES,并可被整潔地與其他3D內(nèi)容上層或下層的網(wǎng)頁內(nèi)容捆綁。它是使用JavaScript編程開發(fā)語言開發(fā)適合動態(tài)3D網(wǎng)頁應(yīng)用的理想工具,并已被主流互聯(lián)網(wǎng)瀏覽器集成。
簡單做以下理解:
1、WebGL是一套JavaScript編程接口
WebGL是JavaScript編程接口,并不依賴于HTML而存在。它的3D渲染與使用canvas元素的2D繪畫類似,所有功能通過JavaScript API調(diào)用。只要會使用canvas元素,在此基礎(chǔ)上設(shè)置一個特殊的繪制上下文即可。
2、WebGL是基于Open ES 2.0的
OpenGL ES是3D渲染標準OpenGL的精簡版本,它是專門為小型計算機設(shè)備量身定制的,目前主流的手機和平板電腦都使用了OpenGL ES進行3D渲染,WebGL基于OpenGL ES制定,更有利于打造一個跨系統(tǒng)、跨平臺、跨瀏覽器的3D Web標準。
3、WebGL和其他網(wǎng)絡(luò)內(nèi)容可以融合在一起
WebGL可以和HTML標簽搭配使用。你可以用傳統(tǒng)的HTML元素制作常規(guī)的2D界面,使用WebGL來開發(fā)自己的3D圖形,瀏覽器會2D、3D圖形有效地整合在一起,提供給用戶。
4、WebGL用于搭建動態(tài)Web應(yīng)用
WebGL是為Web交互而生,能夠很好地與Web瀏覽器整合、與JavaScript協(xié)同工作,對于Web交互非常友好。
5、WebGL是跨平臺的
WebGL能運行于任何操作系統(tǒng),無論是windows,還是mac os。也能運行于任何設(shè)備,無論是手機、平板電腦,還是PC電腦、智能電視。
6、WebGL是完全免費的
在這里展示一張圖片給大家,里面所有的3D圖新繪制和交互,都是由WebGL完成的
WebGL 3D繪圖