uses target translation for camera movement (prevent hard hit when moving beyond lower margin)
This commit is contained in:
parent
7d2c68a055
commit
f20979f86d
3 changed files with 7 additions and 3 deletions
|
|
@ -471,13 +471,15 @@ fn move_camera(
|
|||
|
||||
let size: Vec2 = camera.logical_viewport_size().unwrap();
|
||||
let half_height: f32 = size.y * 0.5;
|
||||
let mut target_translation = character_transform.translation;
|
||||
// prevent camera from going too low
|
||||
target_translation.y = target_translation.y.max(half_height - MARGIN);
|
||||
|
||||
camera_transform.translation = camera_transform.translation.lerp(
|
||||
character_transform.translation,
|
||||
target_translation,
|
||||
time.delta_seconds() * FOLLOW_SPEED,
|
||||
);
|
||||
|
||||
// prevent camera from going too low
|
||||
camera_transform.translation.y = camera_transform.translation.y.max(half_height - MARGIN);
|
||||
// always make sure that camera is away from the object in order to render them
|
||||
camera_transform.translation.z = 999.0;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue