Skip to content

Create bevy_debug crate #11309

@pablo-lua

Description

@pablo-lua

What problem does this solve or what need does it fill?

With the start of the bevy_editor prototype, it has become an important discussion to address the issue of what is needed to move forward with this project.
Most people agree that to do this, we need several debugging tools so that the user can enjoy a complete editing system.
However, another issue in this regard deserves discussion: Should we create a crate just for these debug tools, so that they are all housed in a separate block?
The advantages of this type of approach are numerous: If someone does not need such tools, we can disable everything as easily as disable a feature, in addition, the nesting of these tools will help in understanding the code in the future
So, as advantages, this feature would provide:

  • Nesting of debug tools for easy deactivation/activation
  • Management of these tools by new contributors made easier
  • Making it easier to visualize what we still need for the new editor

What solution would you like?

The creation of the bevy_debug crate (or similar) for the purpose of storing those tools and the moving of all debugs tools already existent in the engine (this last part is not very necessary: We would probably have to define what is only a debug tool and what is not for this purpose)

What alternative(s) have you considered?

We can simply have a debug mod in all crates for the purpose of storing the debug tools of that said crate there
The problem with this approach would probably be debug tools that are of interest of multiple crates: Where to store this kind of tool?

Additional context

Useful discussion on this issue.

The proposal of the new editor prototyping.

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-EditorGraphical tools to make Bevy gamesC-FeatureA new feature, making something new possible

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions