#bevy-plugin #diagnostics #bevy #debugging #gamedev

bevy_screen_diagnostics

Bevy plugin for displaying diagnostics on screen

9 unstable releases (4 breaking)

0.5.0 Feb 18, 2024
0.4.0 Nov 5, 2023
0.3.0 Jul 13, 2023
0.2.3 Mar 6, 2023
0.1.1 Jan 24, 2023

#172 in Game dev

Download history 160/week @ 2023-12-06 203/week @ 2023-12-13 141/week @ 2023-12-20 67/week @ 2023-12-27 195/week @ 2024-01-03 295/week @ 2024-01-10 151/week @ 2024-01-17 207/week @ 2024-01-24 167/week @ 2024-01-31 184/week @ 2024-02-07 386/week @ 2024-02-14 355/week @ 2024-02-21 210/week @ 2024-02-28 180/week @ 2024-03-06 296/week @ 2024-03-13 163/week @ 2024-03-20

885 downloads per month
Used in game_tookit

MIT/Apache

33KB
374 lines

bevy_screen_diagnostics

Display bevy diagnostics on the window without any hassle.

What this can do:

  • easy frame and entity dignostics
  • add custom diagnostics
  • change display of diagnostics on the fly
  • toggle diagnostics easily

see the examples on how to do this.

Quickstart

This adds the framerate and frametime diagnostics to your window.

use bevy::prelude::*;

use bevy_screen_diagnostics::{ScreenDiagnosticsPlugin, ScreenFrameDiagnosticsPlugin};

fn main() {
    App::new()
        .add_plugins(DefaultPlugins)
        .add_plugins(ScreenDiagnosticsPlugin::default())
        .add_plugins(ScreenFrameDiagnosticsPlugin)
        .add_startup_system(setup_camera)
        .run();
}

fn setup_camera(mut commands: Commands) {
    commands.spawn(Camera2dBundle::default());
}

The ScreenFrameDiagnosticsPlugin is a very simple plugin

Plugins

bevy_screen_diagnostics provides the following bevy plugins:

Font

This crate uses bevy's default font (a stripped version of FiraCode) through the builtin-font default feature. You can provide your own font while initialising the ScreenDiagnosticsPlugin by passing it a asset file path.

compatible bevy versions

bevy bevy_screen_diagnostics
0.13 0.5
0.12 0.4
0.11 0.3
0.10 0.2
0.9 0.1

Dependencies

~43–85MB
~1.5M SLoC