Релиз библиотеки meshoptimizer 1.0
9 декабря 2025 года разработчик Arseny Kapoulkine (zeux) представил первый мажорный выпуск открытой библиотеки meshoptimizer 1.0. Исходный код проекта написан на C++ и JavaScript и опубликован на GitHub под лицензией MIT. Решение находится в разработке с 2017 года. Большая часть работы над основной библиотекой в этом релизе была спонсирована Valve.
Когда графический процессор (GPU) рендерит треугольные меши (triangle mesh), различные этапы конвейера GPU должны обрабатывать данные вершин и индексов. Эффективность этих этапов зависит от данных, которые передаются для обработки. Библиотека meshoptimizer предоставляет алгоритмы для оптимизации мешей на этих этапах, а также алгоритмы для уменьшения сложности мешей и накладных расходов на хранение.
Вместе с библиотекой meshoptimizer разрабатываются и два сопутствующих проекта: gltfpack, инструмент командной строки, который автоматически оптимизирует файлы glTF, и clusterlod.h, библиотека C/C++ для непрерывного уровня детализации с использованием кластерного упрощения.
«В этом релизе основное внимание уделяется улучшению алгоритмов кластеризации, упрощения и разбиения, а также стабилизации — за исключением разрешительного режима упрощения, вся остальная функциональность библиотеки, представленная в предыдущих релизах, теперь считается стабильной.
Алгоритмы кластеризации (meshopt_buildMeshlets/meshopt_buildMeshletsFlex, meshopt_buildMeshletsSpatial) теперь работают быстрее и, в случае пространственной кластеризации, создают кластеры более высокого качества для мешлетов с привязкой к вершинам.
Говоря об иерархической кластеризации, следует отметить, что разработана и поддерживается новая библиотека clusterlod.h, работающая параллельно с meshoptimizer. Эта библиотека реализует
Читать на habr.com