EntityRef::len
to query how many components an entity has- Support for serializers that require maps to be of known length
- An alternative column-major serialization layout for better performance and compressibility
- The
serde
feature, enabling serialization ofEntity
handles, and aserialization
module to simplify (de)serializing worlds World::len()
exposing the number of live entities- Access to component data inside
Archetypes
to allow custom column-major operations ColumnBatch
for efficiently spawning collections of entities with the same components when those components' types are not statically known
- Incorrect alignment handling in
EntityBuilder
This release includes API extensions and many optimizations, particularly to query
iteration. Special thanks are due to contributors mjhostet for performance improvements, sdleffler
and AngelOfSol for API improvements and internal refactoring, Veykril for rewriting
#[derive(Bundle)]
, and cart for coordinating with the bevy community. This release wouldn't have
been possible without their hard work!
#[derive(Query)]
for more ergonomic specification of complex queries- Support for generic, tuple, and unit structs in
#[derive(Bundle)]
World::query_mut
andWorld::query_one_mut
reduce setup cost when dynamic borrow checks are unnecessaryQueryItem<'a, Q>
type alias identifying the output of the queryQ
borrowing for lifetime'a
World::find_entity_from_id
allows finding a live entity'sEntity
handle from its 32-bitid
.World::spawn_at
allows creating a new entity for an existingEntity
handle, enabling easier deserialization.Archetype::component_types
simplifies certain scripting patterns
- Panic when passing empty bundles to
World::remove
- Misbehavior when using tuple bundles with multiple fields of the same type