Khronos Group的WebGL工作組主席Ken Russell為《WebGL入門指南》作序
“這是一本理想的Web 3D程式設計的入門教材。此書寫作上乘,清晰明瞭,且詼諧有趣。我真希望當年我開始學習WebGL的時候有這樣一本好書。” ——Giles Thomas,LearningWebGL.com創始人
“如果你是一位對3D感興趣的Web開發者,或者是對Web開發感興趣的3D開發者,我推薦本書作為您的必備伴侶。” ——Raffaele Cecco,視訊遊戲開發者、Web開發者、Supercharged JavaScript Graphic一書作者
序
1996年夏天,我曾在Silicon Graphic公司的Cosmo Software部門做暑期實習生,這家公司正在開發用於Web瀏覽器中的VRML(Virtual Reality Markup Language)播放器。VRML第一次將互動式的3D圖形帶入全球資訊網中。當時的Web還很稚嫩,在如此早期的時候,能在瀏覽器中看到整合的3D體驗還是相當令人激動的。
遺憾的是,VRML並沒有獲得原本想象中的那麼多的支援和使用。從純技術角度講,有兩個原因:首先,VRML的可程式設計性受到效能孱弱的指令碼語言虛擬機器的限制,也就是說,人們不可能編寫出用於整個3D場景的通用程式碼,這也就從根本上限制了VRML的應用領域;其次,VRML的渲染模型是基於原始的OpenGL API的固化圖形管線的。這意味著除了內建於系統中的視覺效果之外,人們無法新增新的自定義效果。
在隨後的16年中,圖形技術和程式語言獲得了翻天覆地的發展。3D圖形管線也變成了完全可程式設計的,這意味著美術人員和設計師可以憑藉他們的想象力創造出無窮的光影著色效果。另外,JavaScript的虛擬機器的效能也得到了巨大提升,流暢地改變3D場景的外觀成為可能,甚至可以完全改變三角形的每個頂點。這樣的靈活性第一次讓在瀏覽器中自由地編寫3D應用成為可能。
隨著近幾年來 OpenGL ES 2.0 API 的發展,計算機圖形學的研發工作達到了頂峰;WebGL API正是基於OpenGL ES 2.0 API的。後者是一個輕量級的純基於著色器的圖形庫,廣泛應用於目前幾乎所有的新的智慧手機和移動裝置。WebGL工作組和開發社群希望將3D圖形處理器的威力以健壯和安全的方式釋放到Web上,掀起新的激動人心的3D Web應用的浪潮,覆蓋每一種作業系統和每一種計算裝置。
Tony的這本書通俗易懂,涵蓋了在Web上開發3D應用的大部分實用知識。這本書既能幫助初學者快速入門,也包含了相當多的高階開發技巧,這部分資訊即使對於資深的3D圖形專家來說,也會眼前一亮。Tony從顯示基本的3D網格開始,不斷介紹一些很有趣的內容,如視覺效果、動畫、互動、創作3D內容等,這些內容組合在一起形成了一個3D遊戲的原型。這本書非常好看,我非常喜歡,希望你也同樣喜歡。
—Ken Russell
科納斯組織(Khronos Group)WebGL工作組主席
譯者簡介
郝稼力 國內最大的WebGL技術社群及資訊站HiWebGL.com的創始人,首次把業界知名度最高的WebGL教程《LearningWebGL》翻譯為中文,受到眾多WebGL學習者的好評;致力於推動WebGL技術在國內的普及,曾在北京、上海等多地舉辦WebGL技術宣講和討論會。目前,正和夥伴走在創業的道路上,運營著國內首個WebGL網站—撈3D網站(Lao3D.com)。
作者介紹
Tony Parisi 著名的Web 3D標準的先驅人物,他曾先後創辦了數家公司並擔任CTO,然後出售其公司。Tony還是VRML和X3D語言的聯合建立者,目前VRML和X3D已經成為網路3D圖形的ISO標準。
封面故事看這裡
我眼中的《WebGL:Up and Running》——中文版譯者序
相關文章
- 微軟加入WebGL工作組微軟Web
- webgl入門(1)-什麼是webglWeb
- webgl入門(2)-初識webgl和著色器Web
- webgl世界 matrix入門Web
- [WebGL入門]四,渲染準備Web
- [WebGL入門]二,開始WebGL之前,先了解一下canvasWebCanvas
- WebGL入門之基於WebGL的3D視覺化引擎介紹Web3D視覺化
- [WebGL入門]七,context的初始化WebContext
- [WebGL入門]一,瀏覽器的準備Web瀏覽器
- [WebGL入門]十四,繪製多邊形Web
- 《WebGL程式設計指南》學習筆記——1.WebGL概述Web程式設計筆記
- [WebGL入門]九,頂點快取的基礎Web快取
- [WebGL入門]五,矩陣的基礎知識Web矩陣
- WebGL&Three.js工作原理WebJS
- webgl 系列 —— 初識 WebGLWeb
- WebGL程式設計指南(5)進入三維世界Web程式設計
- Three.js入門篇之1 - WebGL on HTMLJSWebHTML
- [WebGL入門]六,頂點和多邊形Web
- WebGL載入本地模型Web模型
- WebGL程式設計指南(6)光照Web程式設計
- [WebGL入門]十一,著色器的編譯和連線Web編譯
- [WebGL入門]八,著色器的說明和基礎Web
- webgl入門(3)-座標系與滑鼠互動Web
- webGL入門-四階貝塞爾曲線繪製Web
- [WebGL入門]十,矩陣計算和外部庫Web矩陣
- WebGL程式設計指南(1)簡介Web程式設計
- 圖解WebGL&Three.js工作原理圖解WebJS
- [WebGL入門]十二,模型資料和頂點屬性Web模型
- [WebGL入門]三,3D繪圖的基礎知識Web3D繪圖
- WebGL程式設計指南(7)層次模型Web程式設計模型
- WebGL 的 Hello WorldWeb
- 圖解WebGL和Three.js工作原理圖解WebJS
- WebGL 和 Three.js 工作原理圖解WebJS圖解
- WebGL自學課程(14):WebGL使用Mipmap紋理Web
- WebGL程式設計指南(8)高階技術Web程式設計
- WEBGL橢圓Web
- WebGL-DemoWeb
- Webgl 紋理Web