C2 cesium載入obj等常見BIM及問題

2021-10-06 07:40:02 字數 954 閱讀 8809

專案裡有很多bim是同事用3dmaxs建的,經過溝通他們提供我的是obj檔案。

載入的**就不說了,到處都是。我想說的是載入後**總是很卡而且很容易崩。(我的**資料很多:三個3dtiles檔案48g+9g+16g,正射影像切片20g,天地圖影像快取3g,gltf若干) 資料太多一開始懷疑是3dtiles的問題,找了很久才發現是gltf太大導致的。我的機器是工作站配置一般總體還說得過去。

obj大小m

gltf大小m

3dtiles

瀏覽器測試

3m41

幾秒20m

48m三十幾秒

20m109m

卡40s左右

62m170m

很卡甚至崩潰

240m

載入到157m崩潰

87m——

287m

48m的gltf讀取需要二十幾秒。到載入出來實際要三十幾秒。

107m的gltf讀取要28s。到載入完成更多要40s左右。

換成240m的模型直接崩潰是的崩潰。檔案轉換後大小要更具貼圖等決定不能一概而論。

可以看到最大載入157m左右的gltf瀏覽器就會崩潰。

那麼怎麼辦呢?我想的是兩種思路

一:拆分gltf檔案:3dmaxs裡分成幾個obj匯出

二:obj轉3dtiles。cesiumlab提供了轉換。如果轉換不了就換台電腦用cesiumlab(我電腦就轉不了但我筆記本可以)

人工模型切片=》小場景切片=》支援obj、dae、fbx、3ds、ifc轉為3dtiles。

最後說一句3dtiles是從gltf來的。前者專門針對大場景後者適合小模型

C2 cesium流動特效

描述 cesium裡面的道路什麼的加個流動的效果。原理 通過建立自定義材質來實現。效果 可以自己定義流動樣式和顏色,可以調整流動速度的快慢,自定義材質的 if cesium.polylinetraillinkmaterialpropertyroad1 undefined object.definep...

C 手動開O2優化

本文 感謝博主讓我漲姿勢,蟹蟹!o1優化會消耗少多的編譯時間,它主要對 的分支,常量以及表示式等進行優化。o2會嘗試更多的暫存器級的優化以及指令級的優化,它會在編譯期間占用更多的記憶體和編譯時間。o3在o2的基礎上進行更多的優化,例如使用偽暫存器網路,普通函式的內聯,以及針對迴圈的更多優化。os主要...

手動開上O2優化(c )

o2優化能使程式的編譯效率大大提公升 從而減少程式的執行時間,達到優化的效果。原理 該優化選項會犧牲部分編譯速度,除了執行 o1所執行的所有優化之外,還會採用幾乎所有的目標配置支援的優化演算法,用以提高目標 的執行速度。on n 0,1,2,3,也可以是其它單詞 是gcc為了一般人方便而做的設定,根...