Skip to content

Commit

Permalink
Add supoprt for window resizing
Browse files Browse the repository at this point in the history
  • Loading branch information
zaycev committed Oct 30, 2023
1 parent b042e34 commit 03dbc8f
Show file tree
Hide file tree
Showing 12 changed files with 381 additions and 219 deletions.
2 changes: 1 addition & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
[package]
edition = "2021"
name = "bevy_magic_light_2d"
version = "0.4.3"
version = "0.5.0"

[features]
default = ["egui"]
Expand Down
33 changes: 15 additions & 18 deletions examples/krypta.rs
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ use std::time::Duration;

use bevy::asset::ChangeWatcher;
use bevy::prelude::*;
use bevy::render::camera::RenderTarget;
use bevy::render::camera::{RenderTarget, ScalingMode};
use bevy::render::render_resource::{FilterMode, SamplerDescriptor};
use bevy::render::view::RenderLayers;
use bevy::sprite::MaterialMesh2dBundle;
Expand All @@ -15,7 +15,7 @@ pub const TILE_SIZE: f32 = 16.0;
pub const SPRITE_SCALE: f32 = 4.0;
pub const Z_BASE_FLOOR: f32 = 100.0; // Base z-coordinate for 2D layers.
pub const Z_BASE_OBJECTS: f32 = 200.0; // Ground object sprites.
pub const SCREEN_SIZE: (f32, f32) = (768.0, 768.0);
pub const SCREEN_SIZE: (f32, f32) = (1280.0, 720.0);
pub const CAMERA_SCALE: f32 = 1.2;

// Misc components.
Expand All @@ -38,7 +38,7 @@ fn main() {
primary_window: Some(Window {
resolution: SCREEN_SIZE.into(),
title: "Bevy Magic Light 2D: Krypta Example".into(),
resizable: false,
resizable: true,
..default()
}),
..default()
Expand All @@ -52,7 +52,7 @@ fn main() {
}),
BevyMagicLight2DPlugin,
WorldInspectorPlugin::new(),
ResourceInspectorPlugin::<BevyMagicLight2DSettings>::new(),
// ResourceInspectorPlugin::<BevyMagicLight2DSettings>::new(),
))
.insert_resource(BevyMagicLight2DSettings {
light_pass_params: LightPassParams {
Expand All @@ -62,6 +62,7 @@ fn main() {
indirect_light_contrib: 0.8,
..default()
},
..default()
})
.register_type::<LightOccluder2D>()
.register_type::<OmniLightSource2D>()
Expand All @@ -80,8 +81,8 @@ fn setup(
mut commands: Commands,
mut meshes: ResMut<Assets<Mesh>>,
mut materials: ResMut<Assets<ColorMaterial>>,
post_processing_target: Res<PostProcessingTarget>,
asset_server: Res<AssetServer>,
camera_targets: Res<CameraTargets>,
asset_server: Res<AssetServer>,
mut texture_atlases: ResMut<Assets<TextureAtlas>>,
) {

Expand Down Expand Up @@ -747,10 +748,6 @@ fn setup(
.insert(RenderLayers::all())
.insert(MouseLight);

let (floor_target, walls_target, objects_target) = post_processing_target
.handles
.clone()
.expect("No post processing target");

let projection = OrthographicProjection {
scale: CAMERA_SCALE,
Expand All @@ -765,13 +762,13 @@ fn setup(
Camera2dBundle {
camera: Camera {
hdr: false,
target: RenderTarget::Image(floor_target),
target: RenderTarget::Image(camera_targets.floor_target.clone()),
..default()
},
projection: projection.clone(),
..default()
},
Name::new("main_camera_floor"),
Name::new("floors_target_camera"),
))
.insert(SpriteCamera)
.insert(FloorCamera)
Expand All @@ -784,13 +781,13 @@ fn setup(
Camera2dBundle {
camera: Camera {
hdr: false,
target: RenderTarget::Image(walls_target),
target: RenderTarget::Image(camera_targets.walls_target.clone()),
..default()
},
projection: projection.clone(),
..default()
},
Name::new("main_camera_walls"),
Name::new("walls_target_camera"),
))
.insert(SpriteCamera)
.insert(WallsCamera)
Expand All @@ -803,13 +800,13 @@ fn setup(
Camera2dBundle {
camera: Camera {
hdr: false,
target: RenderTarget::Image(objects_target),
target: RenderTarget::Image(camera_targets.objects_target.clone()),
..default()
},
projection: projection.clone(),
..default()
},
Name::new("main_camera_objects"),
Name::new("objects_targets_camera"),
))
.insert(SpriteCamera)
.insert(ObjectsCamera)
Expand Down Expand Up @@ -880,7 +877,7 @@ fn system_move_camera(
keyboard: Res<Input<KeyCode>>,
) {

let speed = 10.0;
let speed = 18.0;

if keyboard.pressed(KeyCode::W) {
camera_target.y += speed;
Expand All @@ -896,7 +893,7 @@ fn system_move_camera(
}

// Smooth camera.
let blend_ratio = 0.12;
let blend_ratio = 0.2;
let movement = *camera_target - *camera_current;
*camera_current += movement * blend_ratio;

Expand Down
2 changes: 1 addition & 1 deletion examples/minimal.rs
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ fn main() {
.run();
}

fn setup(mut commands: Commands, post_processing_target: Res<PostProcessingTarget>) {
fn setup(mut commands: Commands, post_processing_target: Res<CameraTargets>) {
let mut occluders = vec![];
let occluder_entity = commands
.spawn((
Expand Down
2 changes: 1 addition & 1 deletion examples/movement.rs
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ fn main() {
.run();
}

fn setup(mut commands: Commands, post_processing_target: Res<PostProcessingTarget>) {
fn setup(mut commands: Commands, post_processing_target: Res<CameraTargets>) {
let mut occluders = vec![];
let occluder_entity = commands
.spawn((
Expand Down
11 changes: 7 additions & 4 deletions rustfmt.toml
Original file line number Diff line number Diff line change
@@ -1,7 +1,10 @@
imports_granularity = "Module"
reorder_imports = true
use_field_init_shorthand = true
group_imports = "StdExternalCrate"
brace_style = "AlwaysNextLine"
control_brace_style = "AlwaysSameLine"
newline_style = "Unix"
indent_style = "Block"
unstable_features = true
imports_granularity = "Module"
group_imports = "StdExternalCrate"
imports_layout = "HorizontalVertical"
struct_field_align_threshold = 64
enum_discrim_align_threshold = 64
Loading

0 comments on commit 03dbc8f

Please sign in to comment.