2D Motion Blur
- Dominant language
- Rust
- Stars
- 48.2k
- Forks
- 4.8k
- Avg merge
- 3d 22h
- Merged PRs (30d)
- 161
Description
## What problem does this solve or what need does it fill?
Motion blur has been implemented for 3D, would be great to have it for 2D as well :)
## What solution would you like?
Like the [3D example](https://github.com/bevyengine/bevy/blob/release-0.14.1/examples/3d/motion_blur.rs) but for 2D things.
## Additional context
Ideally, we should be able to do something like this and see motion blur:
```rust
use bevy::{
core_pipeline::motion_blur::{MotionBlur, MotionBlurBundle},
prelude::*,
};
fn main() {
App::new()
.add_plugins(DefaultPlugins)
.add_systems(Startup, setup)
.add_systems(FixedUpdate, move_sprite)
.run();
}
fn setup(mut commands: Commands, asset_server: Res) {
commands.spawn((
Camera2dBundle::default(),
MotionBlurBundle {
motion_blur: MotionBlur {
shutter_angle: 1.0,
samples: 4,
},
..default()
},
));
commands.spawn(SpriteBundle {
texture: asset_server.load("branding/bevy_bird_dark.png"),
..default()
});
}
fn move_sprite(
time: Res
Previous motion blur for 3D was submitted in this PR: https://github.com/bevyengine/bevy/pull/9924
Contributor guide
Assessment
This issue has not been assessed yet.