In my project I want to disable the bevy_sprite_picking_backend feature and write my own (I want to fork #16388). However adding the following to my Cargo.toml does not work:
My PreUpdate graph still includes the sprite and ui backends. The mesh backend isn't present, but that's just because the MeshPickingPlugin is intentionally not added by default.
It looks like the default features for bevy_sprite sets bevy_sprite_picking_backend. bevy then has a feature bevy_sprite that enables that crate which by default uses the picking backend. The bevy_sprite_picking_backend feature in bevy then does nothing since bevy_sprite itself sets this feature.
A similar story exists for bevy_ui_picking_backend and bevy_mesh_picking_backend.
In my project I want to disable the
bevy_sprite_picking_backend
feature and write my own (I want to fork #16388). However adding the following to my Cargo.toml does not work:My PreUpdate graph still includes the sprite and ui backends. The mesh backend isn't present, but that's just because the
MeshPickingPlugin
is intentionally not added by default.It looks like the default features for
bevy_sprite
setsbevy_sprite_picking_backend
.bevy
then has a featurebevy_sprite
that enables that crate which by default uses the picking backend. Thebevy_sprite_picking_backend
feature inbevy
then does nothing sincebevy_sprite
itself sets this feature.A similar story exists for
bevy_ui_picking_backend
andbevy_mesh_picking_backend
.