本文深入探讨了 Bevy 0.14 中名为“meshlet”的虚拟几何功能。该功能旨在解决传统渲染器在处理大量几何图形时遇到的问题,例如绘制调用次数过多、内存限制、高模渲染效率低下以及传统 LOD 的缺陷。 meshlet 功能通过将网格预处理为更小的独立三角形簇(称为 meshlet)来工作,然后将这些簇分组并简化,形成一个 LOD 树。运行时,可以选择不同级别的簇来渲染,从而实现高效的细节级别控制。文章详细介绍了将网格转换为 meshlet 的过程,包括构建 LOD 0 meshlet、查找连接的 meshlet、将 meshlet 分组、简化和拆分组等步骤,以及运行时渲染管线的各个阶段,包括填充簇缓冲区、两阶段遮挡剔除、LOD 选择、光栅化、材质着色等。最后,文章还展望了未来可能进行的改进,例如软件光栅化、持久线程剔除、数据压缩、基于计算的材质着色以及流式传输资源数据等。