bevyengine / bevyengine/bevy

FPS Drop in 0.14.0 when moving mouse

Open
#14,216 2 comments 0 reactions 0 assignees View on GitHub
A-Windowing C-Bug S-Needs-Investigation
Dominant language
Rust
Stars
48.2k
Forks
4.8k
Avg merge
3d 16h
Merged PRs (30d)
171

Description

## Bevy version

0.14.0

## \[Optional\] Relevant system information

```ignore
AdapterInfo { name: "Apple M1 Pro", vendor: 0, device: 0, device_type: IntegratedGpu, driver: "", driver_info: "", backend: Metal }
```

## What you did

Move mouse (without grab, not in window, just move mouse)

## What went wrong

Huge FPS drop:
image
image

## Code
```rust
fn main() {
App::new()
.add_plugins(DefaultPlugins.set(ImagePlugin::default_nearest()))
.add_plugins(ScreenDiagnosticsPlugin::default())
.add_plugins(ScreenFrameDiagnosticsPlugin)
.add_systems(Startup, setup)
.run();
}

fn setup(mut commands: Commands) {
commands.spawn((
Camera3dBundle {
transform: Transform::from_translation(Vec3::ZERO).looking_at(Vec3::ZERO, Vec3::Y),
..default()
},
));
}
```

Contributor guide

Open the contributing guide

Research direction

Start by running the provided minimal reproduction with Bevy 0.14.0 on the reported Apple M1 Pro/Metal setup, comparing FPS while the mouse is still and while it moves outside the window. Trace the relevant input, window, and rendering behavior to identify the source of the frame drop. Done means moving the mouse no longer causes the reported FPS loss without breaking normal input or rendering.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
game-dev, performance
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
32/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.