Cargo Features
[dependencies]
bevy_ecs = { version = "0.17.1", default-features = false, features = ["multi_threaded", "serialize", "bevy_reflect", "reflect_functions", "reflect_auto_register", "backtrace", "trace", "detailed_trace", "bevy_debug_stepping", "track_location", "async_executor", "std", "critical-section", "hotpatching"] }
- default = async_executor, backtrace, bevy_reflect, std
-
These default features are set whenever
bevy_ecs
is added without
somewhere in the dependency tree.default-features = false - multi_threaded
-
Functionality
Enables multithreading support. Schedules will attempt to run systems on multiple threads whenever possible.Enables arrayvec, multi_threaded of bevy_tasks
Affects
iterators::MessageParIter
,mut_iterators::MessageMutParIter
… - serialize
-
Adds serialization support through
serde
.Enables serde, serialize of bevy_platform, serde of indexmap
- bevy_reflect default reflect_auto_register? reflect_functions?
-
Adds runtime reflection support using
bevy_reflect
.Enables bevy_reflect
Affects
clone::component_clone_via_reflect
,bevy_ecs::reflect
,world::reflect
… - reflect_functions = bevy_reflect
-
Extends reflection support to functions.
Enables functions of bevy_reflect
Affects
reflect::AppFunctionRegistry
… - reflect_auto_register = bevy_reflect
-
Enables auto_register of bevy_reflect
bevy_reflect:
Enables automatic reflect registration. Does nothing by itself, must select
auto_register_inventory
orauto_register_static
to make it work. - backtrace default = std
-
Enables automatic backtrace capturing in BevyError
Affects
bevy_error::bevy_error_panic_hook
… - trace detailed_trace? = std
-
Debugging Features
Enables
tracing
integration, allowing spans and other metrics to be reported through that framework.Enables tracing, debug of bevy_utils
- detailed_trace = trace
-
Enables a more detailed set of traces which may be noisy if left on by default.
- bevy_debug_stepping
-
Provides system stepping support, allowing them to be paused, stepped, and other debug operations which can help with diagnosing certain behaviors.
- track_location
-
Provides more detailed tracking of the cause of various effects within the ECS.
This will often provide more detailed error messages. - async_executor default = std
-
Executor Backend
Uses
async-executor
as a task execution backend. This backend is incompatible withno_std
targets.Enables async_executor of bevy_tasks
- std default async_executor backtrace trace?
-
Platform Compatibility
Allows access to the
std
crate. Enabling this feature will prevent compilation onno_std
targets, but provides access to certain additional features on supported platforms.Enables parallel and std of bevy_utils, std of bevy_platform, optional arrayvec, and optional bevy_reflect, std of bitflags, concurrent-queue, fixedbitset, indexmap, log, nonmax, and optional serde
- critical-section
-
critical-section
provides the building blocks for synchronization primitives on all platforms, includingno_std
.Enables critical-section of bevy_platform and optional bevy_reflect
- hotpatching
-
Enables subsecond
Affects
bevy_ecs::HotPatched
,bevy_ecs::HotPatchChanges
,system::System.refresh_hotpatch
…