#meshing #graphics #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

#131 in Data formats

Download history 38/week @ 2024-03-16 3/week @ 2024-03-23 83/week @ 2024-03-30 61/week @ 2024-04-06 45/week @ 2024-04-13 17/week @ 2024-04-20 27/week @ 2024-04-27 8/week @ 2024-05-04 26/week @ 2024-05-11 23/week @ 2024-05-18 23/week @ 2024-05-25 29/week @ 2024-06-01 29/week @ 2024-06-08 34/week @ 2024-06-15 36/week @ 2024-06-22

106 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