[package]
name = "rapier_testbed2d-f64"
version = "0.22.0"
authors = ["Sébastien Crozet <sebcrozet@dimforge.com>"]
description = "Testbed for the Rapier 2-dimensional physics engine in Rust."
homepage = "http://rapier.rs"
repository = "https://github.com/dimforge/rapier"
categories = [
    "science",
    "game-development",
    "mathematics",
    "simulation",
    "wasm",
]
keywords = ["physics", "dynamics", "rigid", "real-time", "impulse_joints"]
license = "Apache-2.0"
edition = "2021"

[badges]
maintenance = { status = "actively-developed" }

[lib]
name = "rapier_testbed2d_f64"
path = "../../src_testbed/lib.rs"
required-features = ["dim2"]

[lints]
rust.unexpected_cfgs = { level = "warn", check-cfg = [
    'cfg(feature, values("dim3", "f32"))',
] }

[features]
default = ["dim2"]
dim2 = []
parallel = ["rapier/parallel", "num_cpus"]
other-backends = ["wrapped2d"]
profiler_ui = ["dep:puffin_egui", "profiling/profile-with-puffin"]
# See https://github.com/dimforge/rapier/issues/760.
unstable-puffin-pr-235 = []

[package.metadata.docs.rs]
features = ["parallel", "profiler_ui"]

[lints.clippy]
needless_lifetimes = "allow"

[dependencies]
nalgebra = { version = "0.33", features = ["rand", "glam027"] }
rand = "0.8"
rand_pcg = "0.3"
web-time = { version = "1.1" }
bitflags = "2"
num_cpus = { version = "1", optional = true }
wrapped2d = { version = "0.4", optional = true }
crossbeam = "0.8"
bincode = "1"
Inflector = "0.11"
md5 = "0.7"
bevy_egui = "0.29"
bevy_ecs = "0.14"
bevy_core_pipeline = "0.14"
bevy_pbr = "0.14"
bevy_sprite = "0.14"
profiling = "1.0"
puffin_egui = { version = "0.29", optional = true }

# Dependencies for native only.
[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
bevy = { version = "0.14", default-features = false, features = [
    "bevy_asset",
    "bevy_winit",
    "x11",
    "tonemapping_luts",
    "ktx2",
    "zstd",
    "bevy_render",
    "bevy_pbr",
    "bevy_gizmos",
] }

# Dependencies for WASM only.
[target.'cfg(target_arch = "wasm32")'.dependencies]
bevy = { version = "0.14", default-features = false, features = [
    "bevy_asset",
    "bevy_winit",
    "tonemapping_luts",
    "ktx2",
    "zstd",
    "bevy_render",
    "bevy_pbr",
    "bevy_gizmos",
] }
#bevy_webgl2 = "0.5"

[dependencies.rapier]
package = "rapier2d-f64"
path = "../rapier2d-f64"
version = "0.22.0"
features = ["serde-serialize", "debug-render", "profiler"]
