QB64 搜索技巧 核手提箱 文字记录 海洋云增白 开源地图 Bliss AI 搜索答案 深海沉船 自由职业 policy 小团队 颈挂空调 Chumby 个人电脑 极端主义 团队 世界 PostgreSQL AI工具 证券 DirectX 防溢 DrawingPics Zulip 儿童读物 化学 连续滚动 代码审查 三菱电机 更多

八百万像素及更多:改进 WebRender 中的纹理图集分配 (nical.github.io)

本文介绍了作者如何改进 WebRender 中的纹理图集分配以提高渲染性能。作者首先开发了 guillotiere,这是一个用于动态纹理图集分配的 Rust crate,它基于优化的 guillotine 算法,能够高效地分配和释放纹理空间。然后,作者分析了 WebRender 的实际工作负载,发现 slab allocator 算法存在浪费空间的问题,特别是在处理大量小尺寸字形时。为了解决这个问题,作者实现了两种 shelf packing 算法,并通过实验比较了它们的性能和空间效率。最终,作者选择了简单的 shelf packing 算法,因为它在简单性和效率之间取得了良好的平衡,并将其集成到 Firefox 86 中。