Cargo Features

[dependencies]
sparkl2d = { version = "0.4.0", default-features = false, features = ["dim2", "f32", "cuda", "serde-serialize", "rapier-testbed", "rapier-harness", "graphics"] }
default = dim2, f32

These default features are set whenever sparkl2d is added without default-features = false somewhere in the dependency tree.

dim2 default

Affects cuda::G2P2G_THREADS, gpu_grid::NUM_CELL_PER_BLOCK, gpu_grid::NUM_ASSOC_BLOCKS, gpu_grid::NBH_SHIFTS, gpu_grid::NBH_SHIFTS_SHARED

f32 default
cuda = cust, sparkl2d-kernels

Affects sparkl2d::cuda, testbed_plugin::UserCudaCallback, testbed_plugin::MpmTestbedPlugin.cuda_callbacks, testbed_plugin::MpmTestbedPlugin.last_timing

serde-serialize = serde

Enables serde-serialize of nalgebra ^0.32, parry2d ^0.13, rapier2d ^0.17.2, and sparkl2d-core

rapier-testbed rapier-harness? = graphics, itertools, rapier_testbed2d

Third-party integration.

Affects third_party::rapier

rapier-harness = rapier-testbed
graphics rapier-testbed? = bevy, bevy_ecs, bevy_egui

Features from optional dependencies

In crates that don't use the dep: syntax, optional dependencies automatically become Cargo features. These features may have been created by mistake, and this functionality may be removed in the future.

serde serde-serialize?

Enables serde

Serialization

rapier_testbed2d rapier-testbed?

Enables rapier_testbed2d ^0.17.0

Third-party integration

bevy_egui graphics?

Enables bevy_egui ^0.22

bevy_ecs graphics?

Enables bevy_ecs ^0.11

itertools rapier-testbed?

Enables itertools ^0.10

cust cuda?

Enables cust

CUDA

sparkl2d-kernels cuda?
bevy not wasm32 graphics?

Enables bevy ^0.11