bevy/crates/bevy_mikktspace
Zachary Harrold cedd0c5028
Add no_std support to bevy_mikktspace (#15528)
# Objective

- Contributes to #15460
- Allows `bevy_mikktspace` to be used in `no_std` contexts.

## Solution

- Added `std` (default) and `libm` features which control the inclusion
of the standard library. To use `bevy_mikktspace` in `no_std`
environments, enable the `libm` feature.

## Testing

- CI
- `cargo clippy -p bevy_mikktspace --target "x86_64-unknown-none"
--no-default-features --features libm`
2024-09-30 18:17:03 +00:00
..
examples Inverse missing_docs logic (#11676) 2024-02-03 21:40:55 +00:00
src Add no_std support to bevy_mikktspace (#15528) 2024-09-30 18:17:03 +00:00
tests Simpler lint fixes: makes ci lints work but disables a lint for now (#15376) 2024-09-24 11:42:59 +00:00
Cargo.toml Add no_std support to bevy_mikktspace (#15528) 2024-09-30 18:17:03 +00:00
LICENSE-APACHE Generate vertex tangents using mikktspace (#3872) 2022-05-31 22:53:54 +00:00
LICENSE-MIT Generate vertex tangents using mikktspace (#3872) 2022-05-31 22:53:54 +00:00
README.md Fixed a link to Blender's mikktspace docs (#13924) 2024-06-19 12:37:10 +00:00

Bevy Mikktspace

License Crates.io Downloads Docs Discord

This is a fork of https://github.com/gltf-rs/mikktspace, which in turn is a port of the Mikkelsen Tangent Space Algorithm reference implementation to Rust. It has been forked for use in the bevy game engine to be able to update maths crate dependencies in lock-step with bevy releases. It is vendored in the bevy repository itself as crates/bevy_mikktspace.

Port of the Mikkelsen Tangent Space Algorithm reference implementation.

Requires at least Rust 1.76.0.

Examples

generate

Demonstrates generating tangents for a cube with 4 triangular faces per side.

cargo run --example generate

License agreement

Licensed under either of

at your option. AND parts of the code are licensed under:

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.