基於WebGL/Threejs技術的BIM模型輕量化之圖元合併

allenjiao發表於2018-06-27

     伴隨著網際網路的發展,從桌面端走向Web端、移動端必然的趨勢。網際網路技術的興起極大地改變了我們的娛樂、生活和生產方式。尤其是HTML5/WebGL技術的發展更是在各個行業內引起顛覆性的變化。隨著WebGL標準被廣泛接受,出現了許多基於HTML5的開源三維引擎,如threejsscenejs等。尤其threejs使用非常廣泛,一方面由於其使用門檻較低,另一方面是其支援若干種三維檔案格式,如stl、obj、3dsobjdaefbx等。對於中小規模的三維模型,使用threejs可以快速搭建一個基於Web的模型瀏覽應用。

     

  瀏覽器受計算能力和記憶體限制等方面的影響,基於桌面的對模型的資料組織和載入方式須做出相應調整,即需要更多的使用三維模型輕量化技術對模型進行深度處理。三維模型輕量化主要包括兩個方面:模型輕量化顯示和模型檔案轉換。

 

        圖元合併:應用於大模型結構比較複雜,頂點、面比較資料比較大,可以通過演算法根據權重剔除相應的頂點、面。從而到達輕量化模型效果。

 

       幾何物件構件物件化: 相同形狀的幾何物件不做多次拷貝,大模型相同幾何體只做一個載入,只做相同模型構件移動、旋轉、縮放。這樣做模型檔案和瀏覽器記憶體的大小得到明顯減少。

 

        場景八叉樹劃分:八叉樹可以快速剔除不可見圖元,減少進入渲染區域的繪製物件。

 

        Lod:模型可以裝置Lod,根據距離、級別載入不同複雜度結構模型。

 

       模型檔案壓縮:三維模型stl、obj、3ds、obj、json等檔案格式演算法壓縮。

1.模型圖元合併20%效果

2.模型圖元合併50%效果

更多細節和功能改進後續贅述,感興趣的可以留言或發郵件1985692469@qq.com,歡迎一起探討!時間有限,很多細節沒辦法寫的很詳細,請大家包涵。

 

相關文章