bevy_fly_camera 0.10.0

A basic flying camera in Bevy
Documentation

Crates.io

bevy-fly-camera

This is a really basic flying camera bundle and plugin for Bevy. It's useful for testing games before you've coded your own movement system.

It features both a 3d camera with Minecraft-style motion, and a 2d camera without mouse-looking.

Keybinds can be edited, but the defaults are:

3D

  • W / A / S / D - Move along the horizontal plane
  • Space - Move upward
  • L Shift - Move downward
use bevy::prelude::*;
use bevy_fly_camera::{FlyCamera, FlyCameraPlugin};

fn setup(commands: &mut Commands) {
  commands
    .spawn(Camera3dBundle::default())
    .with(FlyCamera::default());
}

fn main() {
  App::new()
    .add_plugins(DefaultPlugins)
    .add_startup_system(setup)
    .add_plugin(FlyCameraPlugin)
    .run();
}

Runnable 3D Example

2D

  • W / A / S / D - Move along the 2d plane
use bevy::prelude::*;
use bevy_fly_camera::{FlyCamera2d, FlyCameraPlugin};

fn setup(commands: &mut Commands) {
  commands
    .spawn(Camera2dBundle::default())
    .with(FlyCamera2d::default());
}

fn main() {
  App::new()
    .add_plugins(DefaultPlugins)
    .add_startup_system(setup)
    .add_plugin(FlyCameraPlugin)
    .run();
}

Runnable 2D Example


If you like this crate, there are some issues that I would love to get some help on to make it more maintainable!

If you use this crate in a project, I'd love to know about it! Send me a message or just open an issue about it! ♥

Any PRs are also welcome, though keep in mind that the project scope is intentionally tiny: A quick and dirty 3D motion camera, almost entirely intended for intermediate development steps or 3D demos.


Version Matching

Bevy Version bevy_fly_camera Version
0.1.0 0.1.1
0.1.3 0.3.0
0.2 0.4.0
0.2.1 0.4.1
0.3.0 0.5.0
0.4.0 0.6.0
0.5.0 0.7.0
0.6.0 0.8.0
0.9.0 0.9.0