#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

#207 in Game dev

Download history 248/week @ 2024-01-25 149/week @ 2024-02-01 166/week @ 2024-02-08 426/week @ 2024-02-15 335/week @ 2024-02-22 180/week @ 2024-02-29 202/week @ 2024-03-07 294/week @ 2024-03-14 167/week @ 2024-03-21 248/week @ 2024-03-28 186/week @ 2024-04-04 174/week @ 2024-04-11 289/week @ 2024-04-18 227/week @ 2024-04-25 190/week @ 2024-05-02 134/week @ 2024-05-09

872 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–82MB
~1.5M SLoC