跳至主要內容

性能优化

大约 2 分钟

性能优化

加载速度

三维应用的加载速度是由服务器带宽、网络带宽、计算机硬件、软件环境、浏览器环境、三维应用场景资源大小、资源大小等共同决定的,不考虑外部因素的情况下,应:

  • 模型应使用合适的精度建模,推荐L2 ~ L3级;
  • 减小场景模型的大小,推荐使用glTF格式;
  • 使用压缩算法进行模型压缩,将减小原有模型文件大小30% ~ 50%;
  • 绿植等重复性模型会大幅增加模型面数,使用程序加载生成;

缓存

VT.Model对象支持cache参数,加载完成后可缓存在本地IndexDB离线数据库中,第二次加载的时候会优先从本地离线数据库读取模型文件,从而大幅提升模型加载速度。

多场景

尽量根据需求和空间来创建不同的场景,类似于游戏中的关卡,不同的关卡采用不同的地图(场景资源),在各类数字孪生或可视化应用中,应尽量遵循这个原则。

多场景也类似于前端开发中的组件,不同的场景具有不同的属性、数据和功能。

将所有资源放置在一个场景中,如果场景较小是不会产生太多问题的,但当场景资源文件大小超过20M、50M甚至100M的时候,此时将出现加载问题、性能问题等,极易生产崩溃等不可知的错误,对用户体验极其不友好。

渲染设置

对于性能要求较高的项目,应尽量不使用循环动画,并禁止强制渲染选项,设置fps在合适的值,如30

禁止强制渲染选项后的副作用是,在所有更新操作后,应调用viewer.rm.enableRender(),刷新场景。

动画

尽管动画提升了整体场景的效果,但在场景较大的应用里,过多的动画将严重影响渲染效率。如何平衡动画和性能,根据不同场景和项目需求来评估。

上次编辑于:
贡献者: dashun