4 releases (stable)
1.1.0 | Aug 25, 2022 |
---|---|
1.0.1 | Aug 24, 2022 |
0.1.0 | Aug 24, 2022 |
#2089 in Game dev
29KB
60 lines
Bevy Retro Camera
( Screenshot of Epic RPG World - Ancient Ruins rendered with Bevy and this crate )
Bevy Retro camera is a 2D, pixel-perfect camera for Bevy. It does work for Bevy 0.8.
Features
- Easy to configure camera optimized for 2D pixel-art rendering.
- Plugin that improve Bevy's rendering for pixel art -> Will save you hours of "Why my pixels are blurs ?"
Quickstart
Create a startup system and use RetroCameraBundle
to create a camera. It's also recommended to add the RetroCameraPlugin
to disable the blur effect due to Bevy's default rendering configuration.
// Add RetroCameraPlugin to you app + a startup system
fn main() {
App::new()
.add_plugin(RetroCameraPlugin)
.add_startup_system(setup)
}
// Configure your startup system
fn setup(mut commands: Commands) {
let height: f32 = 240.0; // Viewport size
let scale: f32 = 1.0; // Viewport scaling factor
commands.spawn_bundle(RetroCameraBundle::fixed_height(height, scale));
}
Compatibility matrix
Bevy | bevy_retro_camera |
---|---|
0.8 | 1.0 |
Inspired by
- The excellent Bevy Cheatbook about custom projections.
- Bevy's Camera and Viewport update.
- The RetroCameraBundle of Bevy Retrograde
Dependencies
~36–50MB
~684K SLoC