說明:
1.在引入Mars3D SDK后正常可以在F12打印的信息中可以看到Mars3D和Cesium版本信息。
2.在項目的package.json文件中同樣可以看到安裝后的版本號。
Mars3D對Cesium版本對應(yīng)關(guān)系:
1.正常情況下mars3d依賴的cesium均是最新版本,并且對cesium版本無特殊要求,版本間均是兼容的,因為cesium本身的變更造成一些版本間不兼容情況,目前版本依賴關(guān)系如下:
2.Cesiumv1.102(2023-02-01)默認改為?WebGL2?渲染,與之前版本的shader語法部分不兼容。?具體詳情參看1.102更新日志?(https://github.com/CesiumGS/cesium/blob/1.102/CHANGES.md),
相關(guān)版本依賴關(guān)系是:
Mars3D?v3.4.x及之前?版本,須使用?mars3d-cesiumv1.96及之前的版本?(mars3d-cesium?1.97-1.100?未做發(fā)布)
Mars3D?v3.5.x及之后?版本,須使用?mars3d-cesiumv1.104及之后的版本
處理方式☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆
無法兼容,3.4之前版本需要用1.102之后版本mars3d-cesium時,需要shader需要改寫為?WebGL2?語法,或者構(gòu)造Map時scene參數(shù)下加requestWebgl1:?true參數(shù)。
3.Cesiumv1.97(2022-09-01)的gltf/3dtiles與之前版本完全不兼容,采用了新的glTF架構(gòu)代碼重寫,影響3dtiles部分功能無法使用和部分gltf/3dtiles數(shù)據(jù)報錯。?具體詳情參看1.97更新日志?(opens?new?window),
相關(guān)版本依賴關(guān)系是:
Mars3D?v3.4.x及之前?版本,須使用?mars3d-cesiumv1.96及之前的版本?(mars3d-cesium?1.97-1.100?未做發(fā)布)
Mars3D?v3.5.x及之后?版本,須使用?mars3d-cesiumv1.104及之后的版本
如果使用其他版本會造成的問題(除此之外不影響)
模型裁剪、壓平等功能無法使用;
建筑物特效等涉及3dtiles模型的地方可能無效。
部分shader需要改寫為?WebGL2?語法,或者構(gòu)造Map時scene參數(shù)下加requestWebgl1:?true參數(shù)
處理方式☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆
無法兼容,但您如果對模型編輯等功能沒有特殊要求,可以混用。
4.Cesiumv1.92(2022-04-01)的Promise與之前版本不兼容,具體可以參考其官方說明?(opens?new?window),
與之對應(yīng)的是Mars3Dv3.3.x(內(nèi)部依賴Cesiumv1.92+),所以針對不同情況的處理方式不同。
#出現(xiàn)不兼容的場景
Mars3D?v3.2.x及之前?版本如果需要使用?Cesiumv1.92及之后版本時
Mars3D?v3.3.x及之后?版本如果需要使用?Cesiumv1.91及之前版本時
運行后瀏覽器提示找不到Cesium命名空間之類錯誤時
處理方式☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆
可以在引入Cesium后,引入/mars3d/plugins/compatible/目錄下的2個兼容處理文件cesium-version?(opens?new?window)和cesium-when?(opens?new?window)即可,?如下所示:
mars3d:?[
????"Cesium/Widgets/widgets.css",?//cesium
????"Cesium/Cesium.js",
????"mars3d/plugins/compatible/cesium-version.js",?//cesium版本間兼容處理
????"mars3d/plugins/compatible/cesium-when.js",?
????"mars3d/mars3d.css",?//mars3d
????"mars3d/mars3d.js",
]
5.加載3dtiles數(shù)據(jù)的時候,發(fā)現(xiàn)存在報錯:
?message: 'The tileset must be 3D Tiles version 0. or 1.0., stack: 'Error,提示是3dtiles數(shù)據(jù)數(shù)據(jù)的版本原因。
此時查看了cesium版本是1.83??mars版本3.0.38,那么就需要在使用cesiumlab處理數(shù)據(jù)的時候勾選tilset1.0,因為cesium版本用不了1.1版本的3dtiles數(shù)據(jù)。
cesium用1.91版本之前使用cesiumlab處理3dtiles數(shù)據(jù)的時候都需要勾選tilset1.0。
3dtiels數(shù)據(jù)在使用cesiumlab處理的時候,都需要與cesium版本相匹配。文章來源:http://www.zghlxwxcb.cn/news/detail-788067.html
Mars3D 三維可視化平臺 | 火星科技 | 地圖開發(fā)文章來源地址http://www.zghlxwxcb.cn/news/detail-788067.html
到了這里,關(guān)于Mars3D與mars3d-cesium版本間兼容造成3dtiles和gltf數(shù)據(jù)處理相關(guān)記錄的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!