Skip to content

v0.6

Compare
Choose a tag to compare
@zeux zeux released this 24 Aug 16:21
· 3402 commits to master since this release

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 to meshoptimizer.h accordingly. Templated functions are still available in namespace meshopt for C++.
  • optimizeVertexFetch, optimizeOverdraw and analyzeOverdraw 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 of optimizeVertexCache 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 referenced
  • optimizeOverdraw now correctly handles index buffers with degenerate triangles
  • optimizeOverdraw is able to preserve the vertex cache efficiency much better