v0.6
This release has significant interface changes and introduces several new algorithms and tweaks to existing algorithms.
Interface:
- The library now has a C89 interface;
meshoptimizer.hpp
has been renamed tomeshoptimizer.h
accordingly. Templated functions are still available in namespacemeshopt
for C++. optimizeVertexFetch
,optimizeOverdraw
andanalyzeOverdraw
parameter order has changed - make sure to revise existing calls to these functions.
New algorithms:
- Introduce alternative vertex cache optimizer based on Tom Forsyth's algorithm; it can be invoked by setting
cache_size
parameter ofoptimizeVertexCache
to 0. It generally takes ~3x longer to optimize meshes but usually produces more efficient output with the exception of regular grids. - Introduce mesh simplification algorithm based on edge collapses, see
meshopt::simplify
. This is an early version of the algorithm - expect to see performance and quality improvements in future versions.
Fixes:
remapVertexBuffer
now correctly handles indexed vertex buffers where some vertices are not referencedoptimizeOverdraw
now correctly handles index buffers with degenerate trianglesoptimizeOverdraw
is able to preserve the vertex cache efficiency much better