天天看點

什麼是 Three.js?

Three.js是一個3D JavaScript庫。

如此簡介的描述背後,是作者對其強大功能的自信。

那麼,Three.js究竟能用來幹什麼呢?

Three.js封裝了底層的圖形接口,使得程式員能夠在無需掌握繁冗的圖形學知識的情況下,也能用簡單的代碼實作三維場景的渲染。我們都知道,更高的封裝程度往往意味着靈活性的犧牲,但是Three.js在這方面做得很好。幾乎不會有WebGL支援而Three.js實作不了的情況,而且就算真的遇到這種情況,你還是能同時使用WebGL去實作,而不會有沖突。當然,除了WebGL之外,Three.js還提供了基于Canvas、SVG标簽的渲染器,但由于通常WebGL能夠實作更靈活的渲染效果,是以本書主要針對基于WebGL渲染器進行說明。

應用執行個體

使用Three.js可以實作很多酷炫的效果,比如這個minecraft風格的網頁遊戲工具庫voxel.js:

https://www.ituring.com.cn/download/01YiZFTLCObE.small

精美絕倫的遊戲效果:

https://www.ituring.com.cn/download/01YiZFdy0y9b.small

或是絢麗的資料可視化效果:

https://www.ituring.com.cn/download/01YiZFXEdmp4.small

更多應用可以在Three.js官網檢視。

Three.js作者

Mr. doob是Three.js項目發起人和主要貢獻者之一,但由于Three.js是Github上一個開源項目,是以有非常多的貢獻者,甚至有一天,你也可以在貢獻者清單中看到自己的名字。

使用協定

Three.js是基于MIT協定進行釋出的,是以使用和釋出都非常自由。

繼續閱讀