微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何提高 CesiumJS 中的动态椭圆性能?

如何解决如何提高 CesiumJS 中的动态椭圆性能?

我正在尝试使用 CesiumJS 实时渲染大量动态椭圆,以便绘制 Starlink(1000 多个卫星)或 OneWeb(200 多个卫星)等巨型星座的卫星覆盖范围。 问题是,当启用椭圆时,FPS 会显着下降到非常低的值。 以在地形上随卫星移动的大约200个椭圆为例,FPS下降到5。超过1000个椭圆,FPS有时会下降到0.9。

通过网上搜索,建议如下:

  • 在没有时间变化或位置变化模式的情况下绘制椭圆,因为椭圆在每次帧变化时都会重新绘制 -> 这并不理想,因为椭圆旨在显示随时间的覆盖,除非有办法限制 FPS 和以特定的时间间隔触发 Cesium 刷新,这当然会使动画不流畅。
  • 使用点绘制椭圆 -> 除非有人指出如何将点的 pixelSize 转换为 Cesium 球体上的米,否则不可能,因为覆盖区域是使用米半径计算的。
  • 使用 CZML 文件 -> 由于卫星的时变特性,生成的 CZML 文件超过 100MB,需要时间来处理,因此不适合实时问题。启用圆圈后 FPS 也会下降。

任何人都可以建议如何解决椭圆的 FPS 下降问题或在地形表面绘制平坦点的方法,这需要将地形上的半径转换为像素大小,像素大小是点使用的单位?

>

任何帮助将不胜感激。谢谢。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。