16 releases (breaking)

0.12.1 Jan 1, 2025
0.12.0 Dec 4, 2024
0.11.1 Aug 11, 2024
0.11.0 Jul 6, 2024
0.2.1 May 12, 2021

#53 in Game dev

Download history 1492/week @ 2024-09-22 1099/week @ 2024-09-29 734/week @ 2024-10-06 1022/week @ 2024-10-13 967/week @ 2024-10-20 1119/week @ 2024-10-27 934/week @ 2024-11-03 556/week @ 2024-11-10 709/week @ 2024-11-17 1098/week @ 2024-11-24 1308/week @ 2024-12-01 1471/week @ 2024-12-08 1421/week @ 2024-12-15 588/week @ 2024-12-22 637/week @ 2024-12-29 854/week @ 2025-01-05

3,705 downloads per month
Used in 9 crates (8 directly)

MIT/Apache

70KB
1.5K SLoC

bevy_mod_debugdump

Crates.io Crates.io

Live playground: jakobhellermann.github.io/bevy_mod_debugdump

use bevy::prelude::*;
use bevy::log::LogPlugin;

fn main() {
    App::new()
        .add_plugins(DefaultPlugins)
        .add_plugins(bevy_mod_debugdump::CommandLineArgs)
        .run()
}
$ cargo run -- --help
Commands:

dump-schedule <schedule_name> <file>
dump-render <file>

--no-exit Do not exit after performing debugdump action

Schedule graph

use bevy::prelude::*;
use bevy::log::LogPlugin;

fn main() {
    let mut app = App::new();
    app.add_plugins(DefaultPlugins.build().disable::<LogPlugin>()); // disable LogPlugin so that you can pipe the output directly into `dot -Tsvg`
    bevy_mod_debugdump::print_schedule_graph(&mut app, Update);
}

PreUpdate schedule:

Main (filtered)

See all schedules at docs/schedule.

Render app

Render graph

use bevy::prelude::*;
use bevy::log::LogPlugin;

fn main() {
    let mut app = App::new();
    app.add_plugins(DefaultPlugins.build().disable::<LogPlugin>()); 
    bevy_mod_debugdump::print_render_graph(&mut app);
}
render graph

Extract schedule

ExtractSchedule

Main render schedule

Main

Bevy support table

bevy bevy_mod_debugdump
0.15 0.12
0.14 0.11
0.13 0.10
0.12 0.9
0.11 0.8
0.10 0.7
0.9 0.6
0.8 0.5
0.7 0.4
0.6 0.3
0.5 0.2
0.5 0.1

Dependencies

~15–48MB
~809K SLoC