工業(yè)設(shè)計(jì)是現(xiàn)代化制造業(yè)的一個(gè)基礎(chǔ),我們?cè)O(shè)計(jì)一款產(chǎn)品,通常會(huì)輸出一個(gè)3D模型,然后驗(yàn)證3D模型的合理性,再制造出相應(yīng)的產(chǎn)品或者零件。
隨著工業(yè)互聯(lián)網(wǎng)的快速發(fā)展和瀏覽器功能的完善,現(xiàn)在主流的瀏覽器都支持three.js展示3D模型?,F(xiàn)在已經(jīng)有很多3D打印、建筑設(shè)計(jì)、家居設(shè)計(jì)方面的公司,使用three.js做3D模型的展示。所以我對(duì)three.js的發(fā)展前景非??春茫瑃hree.js方面的人才需求越來越大。
3D模型為什么可以在瀏覽器的展示呢?因?yàn)橹髁鞯臑g覽器都支持了WebGL協(xié)議,而Three.js本身又是對(duì)WebGL提供的接口進(jìn)行了好友的封裝,下面我們一起深入了解一下WebGL和Three.js的基本概念。
WebGL介紹
WebGL(全稱WebGraphicsLibrary)是一種3D繪圖協(xié)議,現(xiàn)在已經(jīng)成為主流瀏覽器支持的一種標(biāo)準(zhǔn)協(xié)議,這樣使得我們無需開發(fā)瀏覽器插件就能夠支持3D模型在瀏覽器的運(yùn)行,還可以用來設(shè)計(jì)3D網(wǎng)頁(yè)游戲等等。WebGL給我們提供了一系列的圖形接口,能夠讓我們通過JavaScript去使用GPU來進(jìn)行瀏覽器圖形渲染,但直接使用WebGL相關(guān)接口進(jìn)行開發(fā),入門門檻較高,需要學(xué)習(xí)的知識(shí)較多,項(xiàng)目開發(fā)周期長(zhǎng),為此Three.js應(yīng)運(yùn)而生。
Three.js介紹
Three.js是JavaScript編寫的WebGL第三方庫(kù),對(duì)WebGL提供的接口進(jìn)行了非常好的封裝。Three.js是一款運(yùn)行在瀏覽器中的3D引擎,你可以用它創(chuàng)建各種三維場(chǎng)景,包括了攝影機(jī)、光影、材質(zhì)等各種對(duì)象。Three.js以簡(jiǎn)單、直觀的方式封裝了3D圖形編程中常用的對(duì)象,降低了入門門檻,提高了項(xiàng)目開發(fā)的效率。
綜上所述,未來webgl或者three.js將會(huì)有非常好的發(fā)展前景。Web瀏覽器支持更加強(qiáng)大的3D渲染展示是大勢(shì)所趨。