3 releases
0.1.2 | Jan 23, 2021 |
---|---|
0.1.1 | Jan 23, 2021 |
0.1.0 | Jan 12, 2021 |
#2084 in Game dev
29KB
285 lines
A 4X style camera for bevy. Demo
Default Key Bindings:
- W / A / S / D / Arrow Keys / Mouse Left - Move along the horizontal plane
- Q / E / Mouse Right - Rotate around the center
- Mouse Wheel - Zoom
Example
use bevy::{prelude::*, render::camera::PerspectiveProjection};
use bevy_4x_camera::{CameraRigBundle, FourXCameraPlugin};
fn main() {
App::build()
.add_plugins(DefaultPlugins)
.add_plugin(FourXCameraPlugin)
.add_startup_system(setup.system())
.run();
}
fn setup(commands: &mut Commands) {
commands
// camera
.spawn(CameraRigBundle::default())
.with_children(|cb| {
cb.spawn(Camera3dBundle {
// I recommend setting the fov to a low value to get a
// a pseudo-orthographic perspective
perspective_projection: PerspectiveProjection {
fov: 0.1,
..Default::default()
},
transform: Transform::from_translation(Vec3::new(-20.0, 20., 0.0))
.looking_at(Vec3::zero(), Vec3::unit_y()),
..Default::default()
});
});
}
Version Matching
Bevy Version | bevy_4x_camera Version |
---|---|
0.4.0 |
0.1.0 |
Dependencies
~18–26MB
~439K SLoC