?
Three.js
Three.js是基于原生WebGL封裝運(yùn)行的三維引擎,在所有WebGL引擎中,Three.js是國(guó)內(nèi)文資料最多、使用最廣泛的三維引擎。
Three.js還能實(shí)現(xiàn)哪些內(nèi)容?
1.物聯(lián)網(wǎng)3D可視化
在人與人之間聯(lián)系的互聯(lián)網(wǎng)時(shí)代,主要是滿足人與人之間的交流,Web頁(yè)面的交互界面主要呈現(xiàn)為2D的交互效果,比如按鈕、輸入框等。
隨著物聯(lián)網(wǎng)的發(fā)展,工業(yè)、建筑等各個(gè)領(lǐng)域與物聯(lián)網(wǎng)相關(guān)Web項(xiàng)目網(wǎng)頁(yè)交互界面都會(huì)呈現(xiàn)出3D化的趨勢(shì)。物聯(lián)網(wǎng)相比較傳統(tǒng)互聯(lián)網(wǎng)更強(qiáng)調(diào)的是人與物、物與物的聯(lián)系,當(dāng)人與物進(jìn)行交互的時(shí)候,比如你通過(guò)網(wǎng)頁(yè)頁(yè)面遠(yuǎn)程控制工廠中的一臺(tái)機(jī)器啟動(dòng)或關(guān)停,你可以在網(wǎng)頁(yè)上通過(guò)div元素寫一個(gè)按鈕,然后表示機(jī)器設(shè)備的開(kāi)關(guān),當(dāng)然你也可以把該設(shè)備以3D的形式展示在網(wǎng)頁(yè)上,然后就像玩游戲一樣直接點(diǎn)擊模型上的開(kāi)關(guān)按鈕,這兩種方式肯定是3D的方式更為直觀,當(dāng)然開(kāi)發(fā)成本也比較大。
2.產(chǎn)品720在線預(yù)覽
在瀏覽器不支持WebGL技術(shù)的時(shí)代,如果你想在網(wǎng)頁(yè)上展示一款產(chǎn)品往往是通過(guò)2D圖片的形式實(shí)現(xiàn)。如果想3D展示一個(gè)產(chǎn)品,往往依賴于OpenGL技術(shù),比如通過(guò)unity3D或ue4開(kāi)發(fā)一個(gè)桌面應(yīng)用,這樣做往往很難隨意傳播,需要用戶下載程序很麻煩,如果是通過(guò)Web的方式展示產(chǎn)品的三維模型,一個(gè)超鏈接就可以隨意傳播。
隨著WebGL技術(shù)的持續(xù)推廣,5G技術(shù)的持續(xù)推廣,各種產(chǎn)品在線3D展示將會(huì)變得越來(lái)越普及,比如一家汽車公司的新款轎車可以在官網(wǎng)上在線預(yù)覽,也許有一天一些電商平臺(tái)會(huì)通過(guò)3D模型取代2D圖片,現(xiàn)在你朋友推薦推薦給你一款新衣服,你會(huì)說(shuō)發(fā)一張圖片看看,也許將來(lái)你會(huì)說(shuō)發(fā)來(lái)一個(gè)3D模型鏈接看看。
3.數(shù)據(jù)可視化
與webgl相關(guān)的數(shù)據(jù)可視化主要是兩方面,一方面是海量超大數(shù)據(jù)的可視化,另一方面是與3D相關(guān)的數(shù)據(jù)可視化。對(duì)于超大的海量數(shù)據(jù)而言,基于canvas、svg等方式進(jìn)行web可視化,沒(méi)有基于WebGL技術(shù)實(shí)現(xiàn)性能更好,對(duì)于3D相關(guān)的數(shù)據(jù)可視化基于WebGL技術(shù),借助3D引擎Threejs可以很好的實(shí)現(xiàn)。
4.H5/微信小游戲
之前非常火的微信小游戲跳一跳就是使用Three.js引擎開(kāi)發(fā)的。開(kāi)發(fā)3D類的H5小游戲或者微信小游戲,Three.js引擎是非常好的選擇。
通過(guò)Threejs開(kāi)發(fā)的小游戲,可以直接部署在微信小程序或者web端,無(wú)需下載,方便傳播,目前的生態(tài)非常適合小游戲開(kāi)發(fā)。
另外還有科教領(lǐng)域、機(jī)械領(lǐng)域、WebVR等等,都可以基于threejs開(kāi)發(fā)。
?
(文章來(lái)源于網(wǎng)絡(luò))