Revy is a proof-of-concept time-travel debugger for the Bevy game engine, built using Rerun.
Revy works by snapshotting diffs of the Bevy database every frame that are then logged into the Rerun database. This allows you to inspect and visualize the state of the engine at any point in time, either in real-time or after the fact. These recordings can then be shared to be replayed or e.g. attached to bug reports.
For more information, check out the Revy repository.
Breakout | 3D shapes | Alien Cake Addict |
---|---|---|
Live demo | Live demo | Live demo |
Install the Rerun Viewer (0.15
).
Add revy
to your dependencies:
revy = "0.15" # always matches the rerun version
Initialize the rerun
plugin:
.add_plugins({ let rec = revy::RecordingStreamBuilder::new("<your_app_name>").spawn().unwrap(); revy::RerunPlugin { rec } })
This will start a Rerun Viewer in the background and stream the recording data to it.
Check out the RecordingStreamBuilder
docs for other options (saving to file, connecting to a remote viewer, etc).