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

#46 in Game dev

Download history 1026/week @ 2024-10-26 1031/week @ 2024-11-02 466/week @ 2024-11-09 683/week @ 2024-11-16 1123/week @ 2024-11-23 1303/week @ 2024-11-30 1398/week @ 2024-12-07 1531/week @ 2024-12-14 650/week @ 2024-12-21 555/week @ 2024-12-28 1086/week @ 2025-01-04 1783/week @ 2025-01-11 1294/week @ 2025-01-18 844/week @ 2025-01-25 1319/week @ 2025-02-01 1347/week @ 2025-02-08

5,128 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
~820K SLoC