mars3d - 超腾开源标签

本文记录了在Vue 3 + Vite项目中,使用京东micro-app微前端框架加载Mars3D三维地球子应用时遇到的四个关键问题及解决方案。问题包括:Cesium全局变量在沙箱中丢失导致mars3d无法访问;ES Module脚本在with沙箱中因new Function执行而报import语法错误;micro-app自定义元素默认尺寸为0导致Canvas无法渲染;以及CESIUM_BASE_URL跨域导致WebGL SecurityError。作者通过micro-app的loader钩子改写代码、配置escapeProperties、设置元素尺寸和Vite代理等手段逐一解决。核心思路是理解沙箱对全局变量、脚本执行、DOM和网络请求的影响,并提供了完整的配置示例和调试技巧。
85
2026-08-15
使用Mars3D或Cesium开发的三维GIS页面,长时间运行后会出现Fragment shader failed to compile错误。最初刷新浏览器可恢复,但连续运行5-6天后,即使重启浏览器也无法解决,只能重启电脑。根本原因是大量3dtiles模型与Vue使用时未释放资源,导致显存泄漏,WebGL引擎崩溃。崩溃后,即使更换显卡、驱动、浏览器或三维框架,问题依旧存在,浏览器会转为CPU渲染,导致CPU高占用、GPU低占用、页面卡顿。目前没有彻底的解决方案,只能通过减小画布大小、降低使用强度来延缓显卡崩溃时间。
690
2025-10-24
使用Mars3D或Cesium开发的三维GIS页面出现卡顿现象,通常表现为CPU占用率极高(接近100%),而GPU占用率低(70%以下)且几乎不占用显存。主要原因有三:浏览器未启用硬件加速、电脑图形设置错误导致浏览器使用低性能核显、显卡驱动崩溃迫使CPU负责渲染。解决方法包括:在Edge或Chrome浏览器设置中勾选“使用图形加速”;在Windows系统的“图形设置”中,为浏览器(如msedge.exe或chrome.exe)指定使用高性能独立显卡。完成设置后重启浏览器,三维GIS应用即可恢复流畅运行。
820
2025-10-24