mirror of
https://github.com/bevyengine/bevy
synced 2024-11-23 05:03:47 +00:00
d30fdda2c3
# Objective `approx` has traits like [`AbsDiffEq`](https://docs.rs/approx/latest/approx/trait.AbsDiffEq.html), [`RelativeEq`](https://docs.rs/approx/latest/approx/trait.RelativeEq.html), and [`UlpsEq`](https://docs.rs/approx/latest/approx/trait.UlpsEq.html). Glam implements them for its math types when the `approx` feature is enabled. Bevy's `Direction2d` and `Direction3d` should implement these too. ## Solution Implement the traits. See [how Glam implements them for its own math types](https://github.com/bitshifter/glam-rs/blob/main/src/features/impl_approx.rs). For the epsilon values, I use the same as `Vec2`/`Vec3` (just `f32::EPSILON`).
34 lines
1.2 KiB
TOML
34 lines
1.2 KiB
TOML
[package]
|
|
name = "bevy_math"
|
|
version = "0.12.0"
|
|
edition = "2021"
|
|
description = "Provides math functionality for Bevy Engine"
|
|
homepage = "https://bevyengine.org"
|
|
repository = "https://github.com/bevyengine/bevy"
|
|
license = "MIT OR Apache-2.0"
|
|
keywords = ["bevy"]
|
|
|
|
[dependencies]
|
|
glam = { version = "0.25", features = ["bytemuck"] }
|
|
serde = { version = "1", features = ["derive"], optional = true }
|
|
approx = { version = "0.5", optional = true }
|
|
|
|
[dev-dependencies]
|
|
approx = "0.5"
|
|
|
|
[features]
|
|
serialize = ["dep:serde", "glam/serde"]
|
|
# Enable approx for glam types to approximate floating point equality comparisons and assertions
|
|
approx = ["dep:approx", "glam/approx"]
|
|
# Enable interoperation of glam types with mint-compatible libraries
|
|
mint = ["glam/mint"]
|
|
# Enable libm mathematical functions for glam types to ensure consistent outputs
|
|
# across platforms at the cost of losing hardware-level optimization using intrinsics
|
|
libm = ["glam/libm"]
|
|
# Enable assertions to check the validity of parameters passed to glam
|
|
glam_assert = ["glam/glam-assert"]
|
|
# Enable assertions in debug builds to check the validity of parameters passed to glam
|
|
debug_glam_assert = ["glam/debug-glam-assert"]
|
|
|
|
[lints]
|
|
workspace = true
|