#graphics #meshing #gamedev #meshopt

bin+lib meshopt-rs

Pure Rust implementation of the meshoptimizer library

3 releases

0.1.2 Nov 12, 2022
0.1.1 Oct 9, 2022
0.1.0 Oct 3, 2022

#121 in Data formats

Download history 73/week @ 2024-02-04 68/week @ 2024-02-11 62/week @ 2024-02-18 30/week @ 2024-02-25 116/week @ 2024-03-03 228/week @ 2024-03-10 36/week @ 2024-03-17 1/week @ 2024-03-24 92/week @ 2024-03-31

362 downloads per month

MIT license

220KB
4.5K SLoC

meshopt-rs

Crates.io Docs.rs Build Status

Pure Rust implementation of the awesome meshoptimizer library.

If you want to use the original C++ implementation from Rust, check out the meshopt crate.

Features

meshoptimizer v0.15 feature level is the current support target. Planned but currently missing features:

Experimental features (hidden behind MESHOPTIMIZER_EXPERIMENTAL in the original implementation) can be enabled with the experimental Cargo feature:

[dependencies]
meshopt-rs = { version = "0.1", features = ["experimental"] }

Performance

Depends on the algorithm: some are in the same ballpark as the original, most are slightly (10-20%) and a few are much (50-100%) slower than the original implementation. Only a small amount of performance work has been done so far. Ideally all algorithms should reach at least 90-95% of the original implementation's performance.

Also note that SIMD support (utilized by vertex buffer decoding/filtering) is currently missing.

Contributing

meshopt-rs is licensed under MIT, just like meshoptimizer. Contributions are welcome!

Since this is a parallel implementation of an existing and actively developed library, the original implementation is followed as closely as possible: similar naming, documentation and code structure; to help porting new features and bug fixes in the future.

No runtime deps