《WebGL程式設計指南》學習筆記——1.WebGL概述

hushhw發表於2017-12-16

《WebGL程式設計指南》學習筆記——1.WebGL概述

此係列用來記錄我學習《WebGL程式設計指南》這本書後的心得,重點內容和總結


WebGL概述

  WebGL,是一項用來在網頁上繪製和渲染複雜三維圖形(3D圖形),並允許使用者與之互動的技術。隨著個人計算機和瀏覽器的效能越來越強,我們能夠在Web上建立越來越精美、越來越複雜的3D圖形。http://webglsamples.org/ 這個網址展示了Google釋出的一些示例WebGL程式,在驚歎美輪美奐的效果的同時,我們發現釋出和執行也變得非常簡單。

  從傳統意義上來說,為了顯示三維圖形,開發者需要使用C或C++語言,輔以專門的計算機圖形庫,如OpenGL或Direct3D,來開發一個獨立的應用程式。現在有了WebGL,我們只需要向已經熟悉的HTML和JS中新增一些額外的三維圖形學的程式碼,就可以在網頁上顯示三維圖形了。

  WebGL是內嵌在瀏覽器中的,你不必安裝外掛和庫就可以直接使用它。而且,因為它是基於瀏覽器的,你可以在多種平臺上執行WebGL程式,而且使用起來有諸多便利點:

  • 你只需要一個文字編輯器和一個瀏覽器,就可以開始編寫三維圖形程式了。
  • 你可以使用通用的Web技術釋出三維圖形程式,展示給你的朋友和其他開發者
  • 你可以充分利用瀏覽器的功能。
  • 網際網路上有大量現成的資料,它們可以幫助你學習WebGL,編寫三維程式等。

WebGL起源

  在個人計算機上使用最廣泛的兩種三維圖形渲染技術是Direct3DOpenGL

  Direct3D是微軟DirectX技術的一部分,是一套由微軟控制的程式設計介面API,主要用在Windows平臺。
OpenGL由於其開發和免費的特性,在多種平臺上都有廣泛的使用。Windows對OpenGL也提供了良好的支援,開發者也可以用它來代替Direct3D。

  OpenGL最初由SGI開發,並在1992年釋出為開源標準。多年以來,OpenGL發展了數個版本,並對三維圖形開發,軟體產品開發,甚至電影製作產生了深遠影響。

  雖然WebGL根植於OpenGL,但它實際上是從OpenGL的一個特殊版本OpenGL ES中派生出來的,後者專用於嵌入式計算機、智慧手機、家用遊戲機等裝置。OpenGL ES於2003-2004年被首次提出,並在2007年(ES 2.0)和2012年(ES 3.0)進行了兩次升級,WebGL是基於OpenGL ES 2.0的

下圖顯示了OpenGL、OpenGL ES 1.1/2.0/3.0和WebGL的關係。
圖片來源www.cnblogs.com/mirror-pc/p/4178897.html

從2.0版本開始,OpenGL支援了一項非常重要的特性,即可程式設計著色器方法。該特性被OpenGL ES 2.0繼承,併成為了WebGL 1.0標準的核心部分。

  著色器,使用一種類似於C的程式語言實現了精美的視覺效果。編寫著色器的語言又稱為著色器語言。WebGL基於OpenGL ES 2.0,使用GLSL ES語言編寫著色器。

  雖然WebGL強大到令人驚歎,但使用這項技術進行開發卻異常簡單:只需要一個文字編輯器(Notepad或TextEdit)和一個瀏覽器(Chrome)即可;並且不需要去搭建開發環境,因為WebGL是內嵌在瀏覽器中的。

  下圖顯示了WebGL程式的結構:
  圖片來源www.cnblogs.com/mirror-pc/p/4178897.html

  由於GLSL ES通常是以字串的形式在JavaScript中編寫的,所以雖然WebGL網頁更加複雜,但它仍然保持著與傳統的動態網頁相同的結構:只用到HTML檔案和JavaScript檔案。
  

文章內容借鑑於:
《WebGL程式設計指南》
https://www.cnblogs.com/mirror-pc/p/4178897.html

相關文章