我眼中的《WebGL:Up and Running》——中文版譯者序
“這是一本理想的Web 3D程式設計的入門教材。此書寫作上乘,清晰明瞭,且詼諧有趣。我真希望當年我開始學習WebGL的時候有這樣一本好書。” ——Giles Thomas,LearningWebGL.com創始人
“如果你是一位對3D感興趣的Web開發者,或者是對Web開發感興趣的3D開發者,我推薦本書作為您的必備伴侶。” ——Raffaele Cecco,視訊遊戲開發者、Web開發者、Supercharged JavaScript Graphic一書作者
自從網際網路誕生以來,讓網頁如何變得更絢麗、更美觀一直是人們在不斷追求的目標。為了達到這個目的,我們發明了HTML標記語言來確定網頁的結構,發明了CSS層疊式樣式表來規範網頁的外觀,發明了JavaScript來實現各種特效,發明了Flash等外掛來嵌入視訊和動畫效果。但是直到WebGL技術的出現,人們才得以從計算機圖形學這一學術根基上解決了這一問題。由於直接和GPU互動,如果願意的話,設計師可以用WebGL精確控制網頁中的每一個畫素。這是之前所有的技術都無法企及的高度。
WebGL技術誕生的年代正是Web 2.0時代的後期,人們正在急切地尋找下一代網際網路應當前進的方向。HTML5被業界認為是合理的答案之一。使用了Canvas的WebGL正好貼合HTML5,成為了這個大家庭中的一分子。與傳統的前端技術以及HTML5中其他技術成員不同的是,WebGL是被設計成直接工作在顯示卡(GPU)端的,所以它比目前其他的典型的Web技術都要更加複雜。總的來說,WebGL的原生API是相當的低等級的。但這也正是它為什麼能夠如此迅速地完成大量的計算,並實現複雜的實時3D渲染的原因。另外,由於WebGL師承OpenGL ES,而OpenGL ES又脫胎自OpenGL,這一切都離不開計算機圖形學,而這門科學對於之前所有的前端工程師來說,都是很少染指的。
於是WebGL的教學和普及陷入了一個兩難境地,圖形工程師不懂前端,而前端工程師更不懂圖形。從這個角度上說,本書很好地解決了這個問題。作者用簡單易懂的語言介紹了圖形學的基本概念,同時又兼顧Web開發中的疑點和難點,無論讀者之前專注於哪個領域,都能夠很好地入門WebGL開發。另外,本書最後一章也是全書最大的亮點之一,在這一部分作者綜合全書的知識點,一步一步陪著讀者搭建了一個完整的WebGL遊戲。為讀者之後獨立搭建自己的WebGL應用奠定了基礎。這對於目前WebGL實現性示例頻出但完整應用依然匱乏的局面來說,有顯著的推動意義。
本書中文版翻譯之時,發生了兩件事。一是Google Chrome瀏覽器移除了WebGL上下文關鍵字中的“實驗性”描述,二是微軟Internet Explorer 11被發現開始支援WebGL。前者標誌著WebGL已經離開實驗階段,正式揚帆起航;後者意味著WebGL難得地作為一項前沿先鋒技術實現了所有瀏覽器廠商的大一統局面。也許未來,WebGL會像今天的CSS一樣普遍,真真切切地改變著網際網路的外觀,改變我們的生活!
譯者簡介
郝稼力 國內最大的WebGL技術社群及資訊站HiWebGL.com的創始人,首次把業界知名度最高的WebGL教程《LearningWebGL》翻譯為中文,受到眾多WebGL學習者的好評;致力於推動WebGL技術在國內的普及,曾在北京、上海等多地舉辦WebGL技術宣講和討論會。目前,正和夥伴走在創業的道路上,運營著國內首個WebGL網站—撈3D網站(Lao3D.com)。
作者介紹
Tony Parisi 著名的Web 3D標準的先驅人物,他曾先後創辦了數家公司並擔任CTO,然後出售其公司。Tony還是VRML和X3D語言的聯合建立者,目前VRML和X3D已經成為網路3D圖形的ISO標準。
封面故事看這裡
相關文章
- Laravel: Up and Running (1):介紹Laravel
- 我眼中的PHPPHP
- 跟你聊聊我眼中的京東
- 我練習專案眼中的 vueVue
- 說說我眼中的Vue和ReactVueReact
- 我眼中的閃電比特幣(LBTC)比特幣
- 說說我眼中的IT界加班文化
- 我眼中的管理之變化中的根本
- 我眼中的《碧藍幻想》:聊聊它到底為何吸引我
- 【譯】How I built a wind map with WebGLUIWeb
- 開發者眼中的“道、法、術、器”
- 我眼中的 Nginx(一):Nginx 和位運算Nginx
- 我眼中的《碧藍幻想》:聊聊它到底為何吸引我(下)
- 專案經理應該知道的97件事 --譯者序
- 我眼中的 Nginx(二):HTTP/2 dynamic table size updateNginxHTTP
- 傳播學者眼中的乙女遊戲遊戲
- 我眼中的 Nginx(五):Nginx — 子請求設計之道Nginx
- 關於敘事與故事:我眼中的《畫中世界》
- 照亮曠野的,是少年開發者眼中的炬火
- 歐美開發者眼中的三國遊戲遊戲
- 我的譯作
- [譯]HTTP/2的優先順序HTTP
- GitHub 工程師:我眼中的理想上司是這樣子的Github工程師
- 我眼中的 Nginx(六):深入 Nginx/Openresty 服務裡的 DNS 解析NginxRESTDNS
- 淺談遊戲中臺——我眼中的supercell為何成功?遊戲
- 專業遊戲開發者眼中的《夢想世界》遊戲開發
- 【翻譯】AwesomeAsyncio中文版
- 解決Flutter編譯一直顯示Running Gradle task 'assembleDebug'Flutter編譯Gradle
- 文史作家朱暉:我眼中的三國文化與王者榮耀
- 1002 Running Median
- Mac使用者必備翻譯軟體!Bob 0.5.3 中文版 附谷歌翻譯外掛!Mac谷歌
- 《松本行弘的程式世界》中文版原作者序
- 「譯」如何實現互動式 WebGL 懸停效果Web
- 【譯Py】Awesome Asyncio 中文版
- 程式設計師羽化之路--我眼中的單例模式並不完美程式設計師單例模式
- 我眼中的2021騰訊高校遊戲創意製作大賽遊戲
- webgl 系列 —— 初識 WebGLWeb
- 獎金up up up!單個漏洞最高獎勵2萬元!
- 小白眼中的https?HTTP