bevy/benches/benches
Trashtalk217 d1bd46d45e
Deprecate get_or_spawn (#15652)
# Objective

After merging retained rendering world #15320, we now have a good way of
creating a link between worlds (*HIYAA intensifies*). This means that
`get_or_spawn` is no longer necessary for that function. Entity should
be opaque as the warning above `get_or_spawn` says. This is also part of
#15459.

I'm deprecating `get_or_spawn_batch` in a different PR in order to keep
the PR small in size.

## Solution

Deprecate `get_or_spawn` and replace it with `get_entity` in most
contexts. If it's possible to query `&RenderEntity`, then the entity is
synced and `render_entity.id()` is initialized in the render world.

## Migration Guide

If you are given an `Entity` and you want to do something with it, use
`Commands.entity(...)` or `World.entity(...)`. If instead you want to
spawn something use `Commands.spawn(...)` or `World.spawn(...)`. If you
are not sure if an entity exists, you can always use `get_entity` and
match on the `Option<...>` that is returned.

---------

Co-authored-by: Alice Cecile <alice.i.cecile@gmail.com>
2024-10-07 16:08:22 +00:00
..
bevy_ecs Deprecate get_or_spawn (#15652) 2024-10-07 16:08:22 +00:00
bevy_math Fix broken bezier curve benchmark (#14677) 2024-08-12 16:10:11 +00:00
bevy_reflect Add core and alloc over std Lints (#15281) 2024-09-27 00:59:59 +00:00
bevy_render Add a ComponentIndex and update QueryState creation/update to use it (#13460) 2024-08-06 00:57:15 +00:00
bevy_tasks Add core and alloc over std Lints (#15281) 2024-09-27 00:59:59 +00:00