Baike.dev
All toolsAI codingTrendingOpen sourceNewsSubmit
Log in
< Back to tools
B

bevy-inspector-egui

> 编程语言
Open source

Inspector plugin for the bevy game engine

1.6K stars0 likes0 views
WebsiteGitHub

About

Inspector plugin for the bevy game engine

bevy-inspector-egui

Examples can be found at ./crates/bevy-inspector-egui/examples.

This crate contains

  • general purpose machinery for displaying Reflect values in reflect_inspector,
  • a way of associating arbitrary options with fields and enum variants in inspector_options
  • utility functions for displaying bevy resource, entities and assets in bevy_inspector
  • some drop-in plugins in quick to get you started without any code necessary.

The changelog can be found at docs/CHANGELOG.md.

Use case 1: Quick plugins

These plugins can be easily added to your app, but don't allow for customization of the presentation and content.

WorldInspectorPlugin

Displays the world's entities, resources and assets.

use bevy::prelude::*;
use bevy_inspector_egui::{bevy_egui::EguiPlugin, quick::WorldInspectorPlugin};

fn main() {
    App::new()
        .add_plugins(DefaultPlugins)
        .add_plugins(EguiPlugin::default())
        .add_plugins(WorldInspectorPlugin::new())
        .run();
}

The quick::WorldInspectorPlugin is meant for simple use cases. If you want to customize it, it's actually very easy to copy the implementation and tweak it. An example of this can be found in the world_inspector_manual.rs example.

ResourceInspectorPlugin

Display a single resource in a window.

…

There is also the StateInspectorPlugin and the AssetInspectorPlugin.

Use case 2: Manual UI

The quick plugins don't allow customization of the egui window or its content, but you can easily build your own UI:

…

Pair this with a crate like egui_dock and you have your own editor in less than 100 lines: examples/egui_dock.rs.

Cargo features

  • highlight_changes - highlight changed values every frame. Ideally this should be runtime-configurable, but it was implemented like this as a stopgap solution. If you'd like to configure this at runtime, please open an issue to let me know it's more of a priority.
  • bevy_pbr (default): register default options for bevy_pbr types. You should disable this if you don't use bevy_pbr to reduce the dependency footprint.
  • bevy_gizmos: enable inspecting of GizmoConfigGroup

FAQ

Q: How do I change the names of the entities in the world inspector?

A: You can insert the Name component.

Q: What if I just want to display a single value without passing in the whole &mut World?

A: You can use reflect_inspector::ui_for_value. Note that displaying things like Handle<StandardMaterial> won't be able to display the asset's value.

Q: Can I change how exactly my type is displayed?

A: Implement InspectorPrimitive and call app.register_type_data::<T, InspectorEguiImpl>.

Bevy support table

bevy bevy-inspector-egui
0.19 0.37
0.18 0.36
0.17 0.35
0.17 0.34
0.16 0.33
0.16 0.32
0.16 0.31
0.15 0.30
0.15 0.29
0.15 0.28
0.14 0.27
0.14 0.26
0.14 0.25
0.13 0.24
0.13 0.23
0.12 0.22
0.12 0.21
0.11 0.19-0.20
0.10 0.18
0.9 0.14-0.17
0.8 0.12-0.13
0.7 0.10-0.11
0.6 0.9
0.6 0.8
0.6 0.7
0.5 0.5-0.6
0.5 0.4
0.4 0.1-0.3

Issues· 0 open

View all issuesOpen on GitHub

No open issues yet, or sync has not completed.

> Tags

Rust

No comments yet. Be the first to share.

> Details

PublishedAug 1, 2026
UpdatedSep 17, 2026
Category编程语言
PricingOpen source

> Related tools

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言