Cargo Features

[dependencies]
bevy_transform = { version = "0.16.0-rc.2", default-features = false, features = ["bevy-support", "serialize", "bevy_reflect", "async_executor", "std", "critical-section", "alloc", "libm"] }
default = async_executor, bevy-support, bevy_reflect, std

Turning off default features leaves you with a barebones definition of transform.

bevy-support default bevy_reflect = alloc

Functionality

Adds normal Bevy impls like deriving components, bundles, reflection, as well as adding systems for transform propagation and more.
This exists because it allows opting out of all of this, leaving only a bare-bones transform struct,
which enables users to depend on that without needing the larger Bevy dependency tree.

Enables bevy_app and bevy_ecs

bevy_app:

bevy

Affects bevy_transform::commands, bevy_transform::plugins, bevy_transform::helper, bevy_transform::systems

serialize

Adds serialization support through serde.

Enables serde, serialize of bevy_math

bevy_reflect default = bevy-support

Adds runtime reflection support using bevy_reflect.

Enables bevy_reflect, bevy_reflect of bevy_app, bevy_ecs, and bevy_math

async_executor default = std

Executor Backend

Uses async-executor as a task execution backend. This backend is incompatible with no_std targets.

Enables async_executor of bevy_tasks

std default async_executor = alloc, bevy_log

Platform Compatibility

Allows access to the std crate. Enabling this feature will prevent compilation on no_std targets, but provides access to certain additional features on supported platforms.

Enables std of optional bevy_app, optional bevy_ecs, bevy_math, optional bevy_reflect, bevy_tasks, bevy_utils, and optional serde

critical-section

critical-section provides the building blocks for synchronization primitives on all platforms, including no_std.

Enables critical-section of optional bevy_app, optional bevy_ecs, optional bevy_reflect, and bevy_tasks

alloc bevy-support std

Allows access to the alloc crate.

Enables alloc of optional serde

libm

Uses the libm maths library instead of the one provided in std and core.

Enables libm of bevy_math

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.

bevy_log std
bevy_utils std