大佬们,请教一下 three.js 的性能优化问题

2025 年 5 月 23 日
 Hunnncat

各位大佬,我在开发 Three.js 应用时遇到性能瓶颈,场景中需要渲染 300+ 的货架模型(.fbx 格式,单模型 45kb~85kb ,在渲染的时候,货架模型可能会有差异,比如根据状态会切换不同的货架模型)。当模型数量超过 2000 个时,Stats 中的帧率显著下降至 20 FPS 以下。请问针对这种大量模型的场景,有哪些有效的性能优化方案?特别是在模型格式转换、实例化渲染或批处理方面有哪些最佳实践?

1394 次点击
所在节点    前端开发
5 条回复
Hunnncat
2025 年 5 月 23 日
补充下笔记本配置信息
CPU:Intel Core i7-13700H 详细的参数 https://detail.zol.com.cn/1441/1440479/param.shtml
GPU:Intel Iris Xe Graphics
内存:32GB
snow0
2025 年 5 月 23 日
客户端上独显,或者使用 UE/BS 方案替换
sadyx
2025 年 5 月 23 日
1. 动态加载,比如用 KD/八叉树加载最近的模型
2. LOD
3. 模型减面
4. 如果是自定义的 material 的话,能复用就复用
5. 及时做 dispose
6. 一般来说 merge geometries 是比较常用的,但是好像不太符合你的需求
Hunnncat
2025 年 5 月 23 日
@snow0 感谢大佬
Hunnncat
2025 年 5 月 23 日
@sadyx 感谢大佬

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://study.congcong.us/t/1133755

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX