【張靜vinjn的回答(20票)】: WebGL 是以 OpenGL ES 2.0 為藍(lán)本設(shè)計(jì)的,OpenGL ES 2.0 則是以 OpenGL 2.0 為藍(lán)本設(shè)計(jì)的。 你別看表面上跑的是 js,真正運(yùn)行的時(shí)候還是跑在 OpenGL 驅(qū)動(dòng)上的(Windows平臺(tái)是例外,使用Direct3D 9/11 來(lái)模擬的 WebGL)。 你要想真正學(xué)會(huì) WebGL,必須懂 OpenGL 和圖形學(xué),以及 shader 語(yǔ)言。 當(dāng)然了,由于 Three.js 這類游戲引擎的存在,即便你不懂 WebGL,也可以快速地進(jìn)行開發(fā),但是,一旦你遇到意料之外的問題了,還是得回過(guò)頭來(lái)看 WebGL,甚至看 OpenGL 紅寶書。 如果要學(xué)習(xí) OpenGL,那么脫不了三本書 紅寶書 OpenGL Programming Guide,出到第八版 藍(lán)寶書 OpenGL SuperBible,出到第六版 橙寶書 OpenGL Shading Language,出到第三版 如果要學(xué)習(xí)OpenGL ES,那么只有一本,入門的話我最推薦的是這本,它與 WebGL 的關(guān)系也最近 OpenGL ES 2.0 Programming Guide 其實(shí)還有一本最靠譜的 WebGL Programming Guide,但是還沒發(fā)售 2013-11-03 更新 WebGL高級(jí)編程:開發(fā)Web 3D圖形 是一本非常全面的書籍,推薦作為第一本入門書。 【HiWebGL的回答(1票)】: 要學(xué)習(xí)WebGL,最好有編寫JavaScript、OpenGL或OpenGL ES的經(jīng)驗(yàn)和基礎(chǔ),還需要少量的HTML5知識(shí)。 如果你是一個(gè)網(wǎng)絡(luò)前端工程師,那可能你的JavaScript經(jīng)驗(yàn)已經(jīng)很充足了,但是卻沒有接觸過(guò)計(jì)算機(jī)圖形學(xué),那也沒有關(guān)系,實(shí)際上你可以越過(guò)OpenGL和OpenGL ES,直接從WebGL切入,作為你學(xué)習(xí)計(jì)算機(jī)圖形學(xué)的實(shí)現(xiàn)的開始。當(dāng)然有圖形編程的技術(shù)是最好的, 【SijieTian的回答(0票)】: 可以直接使用類似three.js這樣的WebGL來(lái)做開發(fā),不太需要用到OpenGL的知識(shí),不過(guò)想優(yōu)化渲染的話還是需要OpenGL的 【陳大的回答(0票)】: 不完全需要。主要依賴的是主流的web前端知識(shí),HTML5和JavaScript。學(xué)習(xí)WebGL之前,能了解一下OpenGL的渲染管線原理,能夠幫助理解。 原文地址:知乎 |
|