#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

#135 in Data formats

Download history 9/week @ 2024-07-22 61/week @ 2024-07-29 2/week @ 2024-08-05 14/week @ 2024-08-19 19/week @ 2024-08-26 48/week @ 2024-09-02 25/week @ 2024-09-09 24/week @ 2024-09-16 76/week @ 2024-09-23 37/week @ 2024-09-30 34/week @ 2024-10-07 60/week @ 2024-10-14 56/week @ 2024-10-21 55/week @ 2024-10-28 34/week @ 2024-11-04

206 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