| Crates.io | bevy_rts_camera |
| lib.rs | bevy_rts_camera |
| version | 0.10.0 |
| created_at | 2024-03-05 07:52:55.545344+00 |
| updated_at | 2025-04-26 00:17:11.726651+00 |
| description | An RTS-style camera for Bevy |
| homepage | https://github.com/Plonq/bevy_rts_camera |
| repository | https://github.com/Plonq/bevy_rts_camera |
| max_upload_size | |
| id | 1162785 |
| size | 173,521 |

Bevy RTS Camera provides an RTS-style camera for Bevy Engine, to get your game up and running quickly. Designed for simple use cases, and does not try to cover advanced requirements.
A default controller is included with these default controls:
You can also 'edge pan' by moving the mouse to the edge of the screen.
Add the plugin:
.add_plugins(RtsCameraPlugin)
Add RtsCamera (this will automatically add a Camera3d but you can add it manually if necessary):
commands.spawn((
RtsCamera::default(),
RtsCameraControls::default(), // Optional
));
Add Ground to your ground/terrain entities:
commands.spawn((
PbrBundle {
mesh: meshes.add(Plane3d::default().mesh().size(80.0, 80.0)),
..default()
},
Ground,
));
This will set up a camera at world origin with good defaults based on a roughly realistic scale (where an average human is 1.75 units tall).
Check out the advanced example to see the possible configuration options.
| bevy | bevy_rts_camera |
|---|---|
| 0.16 | 0.10 |
| 0.15 | 0.9 |
| 0.14 | 0.8 |
| 0.13 | 0.1-0.7 |
All code in this repository is dual-licensed under either:
at your option. This means you can select the license you prefer! This dual-licensing approach is the de-facto standard in the Rust ecosystem and there are very good reasons to include both.