LOD(Level of Detail,细节层次)决定网格画多细;视锥剔除判断哪些空间块可能出现在画面里;活动预算限制同时参与渲染的数据规模。 三者分别减少无法分辨的细节、视野外的工作,以及设备暂时承担不起的负载。
这套北斗网格的做法是:用相机到 Tile 中心的三维距离选层级,用区域 OBB 和 Tile 包围体做两级剔除,再按距离和预算安排加载;相机移动期间暂缓新增 L7,停下来约 120 毫秒后补细节。
代价是细节分阶段出现,Tile 级筛选会保留少量实际看不见的数据,而且视锥剔除不处理遮挡 —— 楼房和地形挡住的块仍在视锥内,仍然要生成。
这篇从一个常见问题展开:已经用了 GPU Instancing,为什么大规模网格还是会卡?