WebGL學(xué)習(xí)記錄(1)

WebGL(Web圖形庫(kù))是一個(gè)JavaScript API,可在任何兼容的Web瀏覽器中渲染高性能的交互式3D和2D圖形,而無(wú)需使用插件。WebGL通過(guò)引入一個(gè)與OpenGL ES 2.0非常一致的API來(lái)做到這一點(diǎn),該API可以在HTML5 <canvas>元素可被用來(lái)通過(guò)JavaScript(Canvas API 或 WebGL API)繪制圖形及圖形動(dòng)畫(huà)。")元素中使用。 這種一致性使API可以利用用戶設(shè)備提供的硬件圖形加速。

(PS: 引用來(lái)源于mdn官方文檔)

WebGL可以簡(jiǎn)單理解為主要是對(duì)3D繪制在網(wǎng)頁(yè)端的圖形規(guī)范,只需支持的瀏覽器即可進(jìn)行訪問(wèn)體驗(yàn),無(wú)需額外的插件or本地應(yīng)用程序。

基礎(chǔ)概念

  1. 三維坐標(biāo)系(x/y/z軸);頂點(diǎn)→多邊形→網(wǎng)格/模型;紋理映射(位圖)、材質(zhì)(凹凸效果、輝光效果等)、光源;變換(模型縮放、旋轉(zhuǎn)、位移等)通過(guò)矩陣;相機(jī)、透視、視口、投影(三維需要投射成二維展示);著色器。
  2. 使用WebGL把圖形渲染到頁(yè)面中,至少需要執(zhí)行以下步驟
  • 創(chuàng)建一個(gè)畫(huà)布元素(canvas);
  • 獲取畫(huà)布的上下文(content);
  • 初始化視口;
  • 創(chuàng)建一個(gè)或者多個(gè)包含渲染數(shù)據(jù)的數(shù)組(通常是頂定數(shù)組);
  • 創(chuàng)建一個(gè)或者多個(gè)矩陣,將頂點(diǎn)數(shù)組變換到屏幕空間中;
  • 創(chuàng)建一個(gè)或者多個(gè)著色器來(lái)實(shí)現(xiàn)繪制算法;
  • 繪制。

參考書(shū)目

  • 《WebGL入門(mén)指南》
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容