- upgrade to
bevy_egui 0.30
/egui 0.29
- update
image
to 0.25
- update to
bevy_egui
0.29 - make
RangeInclusive<fXX>
inspectable
- introduce features for egui clipboard and open_url to improve wasm compat
- re-enable image and mesh inspector impls
- don't clamp linearrgba values
- fix render layer inspector
- actually make bevy_egui/render optional
- put quick.rs plugins in their own schedule to fix system ambiguity
- update to bevy 0.14, egui 0.28
- make
bevy_render
an optional feature - put plugin systems in their own Inspect schedule to avoid ambiguities
- update to egui 0.27 and bevy_egui 0.27
- add dropdown for images handles (thanks to @eupraxia05 jakobhellermann#190)
- add entity name filter to world inspector (thanks to @RobWalt jakobhellermann#194)
- fix compilation on wasm32
- add
InspectorPrimitive
trait to make custom UI for a type more convenient (see example)
- bevy
0.13
, egui0.26
- show entityid beside name in restrictedworldview
- fix change detection in hierarchy UI
- improve macro path hygiene
- add
InspectorEguiImpl
forPathBuf
- update to
egui
0.24
#174 - show entity ID beside name #172
- allow horizontal scrolling and improve UI #166
- allow inspecting
Range<T>
- restrict
Time<Virtual>
to positive durations
- update to bevy
0.12
(@raffaeleragni, jakobhellermann#157) - add ability to edit and insert elements into maps (@B-Reif, jakobhellermann#155)
- show asset path if available in inspector
- update egui to
0.23
- add better list controls (jakobhellermann#152 by @B-Reif)
- improve some error messages
- update egui
- don't panic in quick plugin if no
PrimaryWindow
exists
- fix tab background in
egui_dock
example - add ui for
RenderLayers
- update to
syn 2.0
- add suggestions for a fix in the error message for a missing
InspectorEguiImpl
- fix nested entity name not being displayed
- fix
WorldInspectorPlugin
docs - fix
egui_dock
system order
- update to
bevy
0.10 - add
run_if
toquick::*
plugins - add
CommandQueue
to context- this allows us to display a despawn button for entities
- fix single struct field name not being displayed
- return whether an entity was selected from hierarchy
- don't show error for zero-sized types
- update to
bevy_egui
0.19
- fix bug where the world inspector would only show components until it finds an unregistered one
- add
EntityOptions
withdisplay: EntityDisplay::Id | EntityDisplay::Components
(default to components)
- fix
ui_for_world_entities_filtered
not actually using filter
- add default
highlight-changes
feature for globally toggling the yellow highlight on changes- if you would like more fine-grained control, open an issue
- add
FilterQueryInspectorPlugin
- fix
#[derive(InspectorOptions)]
derive on generic type - wrap entities in collapsing header in
ui_for_world_entities
- add utility function
bevy_inspector::ui_for_world_entities_filtered<F>
- There's a migration guide at MIGRATION_GUIDE_0.15_0.16.md
- full rewrite of the crate
- now centered around
Reflect
instead of the customInspectable
derive macro - options can be specified using
#[derive(InspectorOptions)]
quick::*
plugins likeWorldInspectorPlugin
,ResourceInspectorPlugin<T>
,StateInspectorPlugin<S>
andAssetInspectorPlugin<A>
- functions in
bevy_inspector
for bevy-specific debug UI:ui_for_world
,ui_for_resource
,ui_for_value
etc.
- now centered around
- multiediting is supported using
InspectorUi::ui_for_reflect_many
- read-only UI is now possible with
_readonly
variants
InspectorPlugin<T>
got renamed toquick::ResourceInspectorPlugin<T>
and doesn't automatically insert the resource anymore- You need to call
register_type
for every type that you want to be able to see
- update to bevy_egui 0.18
- impl for
MouseButton
,KeyCode
- fix font path in example
- implement Inspectable for slices
- update to bevy 0.9
- update to
bevy_egui
0.16 - allow negative scale on transform (thanks to @asherkin)
- implement inspectable for gamepad types (thanks to @johanhelsing)
- fix egui ID reuse
- fix compilation without
bevy_ui
feature
- fix compilation without the
bevy_ui
feature
- register
Vec3A
- don't clamp
Val::Px
andVal::Percent
- display
Duration
with more precision and only update if changed - update to bevy
0.8
- update to
bevy_egui
0.14 - update nalgebra feature to
nalgebra
0.31
- implement
Inspectable
forVecDeque
- update to bevy 0.7
- put
bevy_pbr
,bevy_sprite
,bevy_text
,bevy_ui
behind feature flags (enabled by default) - implement
Inspectable
forMesh2dHandle
(thanks to @tversteeg https://github.com/jakobhellermann/bevy-inspector-egui/pull/51)
- add
nalgebra
features forbevy-inspector-egui-rapier
integration crate - update to
bevy_egui
0.12 - fix allowed value range for
OrthographicProjection
- update to
bevy_egui
0.11 - sort components in world inspector by default
- update
egui
to 0.16 andbevy
to 0.6 - ability to filter entities by name in world inspector
- add
app.register_inspectable
for easyInspectableRegistry
access - add
highlight_changes
to world inspector params - use
&mut Context
instead of&Context
- fix external changes to quaternions not being displayed
- update to
egui
0.13,bevy_egui
0.6 - update to rapier
0.10
- rename
rapier
feature torapier3d
- fix
Quat
implementation to not modify unrelated state - expose
InspectorWindows
to allow controlling whether inspector ui is shown
- add
rapier2d
feature
- support for multiple windows using
InspectorPlugin::new.on_window(window_id)
(example) InspectorQuerySingle
(like.single_mut
on a query)ignore
,read_only
andwrapper
built-in attributes- optional
ui_ctx
- many new implementations (
Handle<Texture>
,ColorMaterial
,Entity
,World
, UI stuff, tuples) WorldInspectorPlugin
for displaying the whole entity tree in a UI panelwidgets::InspectorQuery
: display entity tree for select entities Use like#[derive(Inspectable)] struct Inspector { root_elements: InspectorQuery<Entity, Without<Parent>>, collider: InspectorQuery<&'static mut Transform, With<Collider0>>, }
widgets::InspectableButton
: sends event upon button click. Usage looks like- derive
Inspectable
for enums with data - drag and drop into texture
Inspectable::ui
now returns a bool which indicates whether any data has changed. You can now check viaRes<T>::changed
whether data was modified.- rename
InspectorPlugin::thread_local -> new, InspectorPlugin::new -> shared
- require
FromResources
instead ofDefault
on the inspectable data - update to
bevy 0.5
Inspectable::Attributes
requireClone
- show
Vec2
as two number fields by default, use#[inspectable(visual)]
for old behaviour - properly give ids to egui
- mark inspected components in the world inspector as mutated
- quaternions are now displayed as euler angles by default
- UI fixes for derived structs
- clamp number types to their
min
/max
values if set
-
another change to the
Inspectable
trait, it now gets a context from which bevy'sResources
can be access (provided it is started in thread-local mode)struct Context<'a> { resources: Option<&'a bevy::ecs::Resources> } trait Inspectable { type Attributes: Default; fn ui(&mut self, ui: &mut egui::Ui, options: Self::Attributes, context: &Context); }
This allows implementations for things like
Handle<T>
that need access so more information.When access to the resources is needed, add the plugin like
add.add_plugin(InspectorPlugin::<T>::thread_local())
-
implementations of
Inspectable
forStandardMaterial
andRange{,Inclusive}<T>
- impl Inspectable for the remaining number types
- impl Inspectable Mat{3,4}
ReflectedUI
wrapper type for automatically figuring out how to display a type based on theReflect
impl#[derive(Inspectable, Default, Debug)] struct Data { timer: ReflectedUI<Timer> }
- allow multiple inspector windows
- rename NumberAttributes::step to speed
- use the relecant number type to specify min and max of the NumberAttributes instead of always f64
- simplify inspectable trait, rename FieldOptions to Options
The trait now looks like this:
trait Inspectable { type Attributes: Default; fn ui(&mut self, ui: &mut egui::Ui, options: Self::Attributes); }
- try to convert Attributes using From::from
- first version with
Inspectable
support for number typesu8
,i32
andf{32,64}
,String
andVec<T>
and bevy'sColor
,Transform
,Quat
,Vec{2,3,4}
- derive
Inspectable
for unit enums (displays a dropdown) - derive
Inspectable
for struct #[inspectable(label = x, collapse)]
builtins for struct derivesnightly
features for arrayInspectable
impls