Notable user-facing changes with each release version will be described in this file.
0.3.0: 2024-07-06
Added:
- Widget framework:
PerfUiWidget
trait, allowing implementations of alternative widgets. - Bar Widget
- More helper bundles for spawning Perf UIs:
PerfUiBundle
,PerfUi*Entries
(for various groups of entries). - Example showing how to toggle (spawn/despawn) Perf UI.
- All built-in widget implementations gated behind
"widgets"
cargo feature. Enabled by default. Disable for a smaller build, if you do not intend to use any of the provided widgets.
Changed:
- Bevy 0.14 support.
ColorGradient
now stores and interpolates colors in the OKLAB color space.- All built-in entry implementations gated behind
"entries"
cargo feature. Enabled by default. Disable for a smaller build, if you only intend to use your own custom entry implementations. - CPU and RAM entries gated behind
sysinfo
cargo feature (which needs to enablesysinfo_plugin
onbevy
). Enabled by default.
Fixed:
- Run Conditions now take into account visibility, eliminating perf overhead when Perf UI is spawned but not visible.
0.2.3: 2024-03-21
Added:
PerfUiCompleteBundle
to allow spawning a Perf UI with all our entries in one line of code!
Changed:
simple
example renamed tospecific_entries
. Newsimple
example usesPerfUiCompleteBundle
.
0.2.2: 2024-03-21
Added:
PerfUiEntryWindowScaleFactor
built-in entry.ColorGradient
is now inprelude
.
0.2.1: 2024-03-21
Added:
ColorGradient::single()
constructor for when you want a fixed color.
0.2.0: 2024-03-21
Added:
PerfUiRoot.inner_background_color_highlight
: different background color for highlighted entries.PerfUiRoot.display_labels
: can be used to disable the labels column and show bare values.PerfUiRoot.layout_horizontal
: display entries horizontally instead of vertically.fps_minimalist
example, shows how to make a minimal FPS counter.label
field on all built-in entry types, to allow customizable label strings.- Built-in entries can now display units (opt-out) with their values, where relevant.
PerfUiEntryCursorPosition
built-in entry.PerfUiEntryWindowResolution
built-in entry.PerfUiEntryWindowMode
built-in entry.PerfUiEntryWindowPresentMode
built-in entry.PerfUiEntryFixedTimeStep
built-in entry.PerfUiEntryFixedOverstep
built-in entry.PerfUiEntry::width_hint
optional method. If implemented, allows ensuring the UI is correctly sized and the values are correctly aligned at all times.utils::width_hint_pretty_*
helper functions for values formatted usingutils::format_pretty_*
.utils::ColorGradient
helper to allow for custom gradients / color interpolation.
Changed:
enable_{color,highlight}
andthreshold_*
fields on built-in entry types that support coloring/highlighting based on value, have been replaced withcolor_gradient
to allow full customization.PerfUiEntry::update_value
now takes&self
. It is no longer allowed to mutate the component.PerfUiEntry::label
now returns&str
instead ofString
.
Fixed:
- The UI will now correctly update itself if you change any parameters after it has already been spawned.
- UI entries will now correctly disappear if you remove their PerfUIEntry component.
Removed:
utils::ryg_gradient_{up,down}
. Use the newutils::ColorGradient
instead.
0.1.0: 2024-03-19
Initial Release