可以从“模型资产瘦身 + 运行时策略”两条线做,优先改资产,其次改渲染与加载策略:
资产瘦身(最有效)
- 用 gltf-transform / Blender 简化几何:删除看不见的内部构件、合并重复部件、面数减到可接受范围。- 压缩:DRACO(几何)+ KTX2/Basis(纹理)+ meshopt(顶点/索引压缩)。
- 贴图优化:降低分辨率、合并贴图(atlas)、减少贴图数量,能用颜色就别用贴图。
- 材质精简:减少材质数量、避免复杂着色(PBR 贴图过多会拖慢)。 运行时策略(Three.js)- 分块加载 / 按需加载:把 BIM 切成楼层/区域/专业,视野内才加载。
- LOD:近处高模、远处低模;或者远处直接用 billboards。
- 实例化:重复构件(门、窗、灯具)用 InstancedMesh。
- 裁剪与剔除:视锥裁剪 + 层级包围盒(BVH/Octree)快速剔除不可见对象。
- 禁用/降低阴影:大场景阴影代价极高,必要时用 baked lightmap。
- 降低后处理:尽量不用或降低 SSAO、Bloom 等。
- 降低 draw calls:合并静态网格、材质合并;能合就合。 推荐工具链- gltf-transform:一键压缩/简化/合并/纹理压缩。
- meshopt + DRACO + KTX2:组合拳。
- 对 BIM:优先导出“可视化精简版”,保留细节给后端或点击查看。网友回复


