very minor tidying
This commit is contained in:
@ -157,23 +157,20 @@ update :: proc( delta_time : f64 ) -> b32
|
||||
workspace.zoom_target = cam.zoom
|
||||
}
|
||||
|
||||
config.cam_max_zoom = 30.0
|
||||
config.cam_zoom_smooth_snappiness = 10.0
|
||||
config.cam_zoom_mode = .Smooth
|
||||
switch config.cam_zoom_mode
|
||||
{
|
||||
case .Smooth:
|
||||
zoom_delta := input.mouse.vertical_wheel * config.cam_zoom_sensitivity_smooth
|
||||
workspace.zoom_target *= 1 + zoom_delta * f32(delta_time)
|
||||
workspace.zoom_target = clamp(workspace.zoom_target, 0.05, config.cam_max_zoom)
|
||||
workspace.zoom_target = clamp(workspace.zoom_target, config.cam_min_zoom, config.cam_max_zoom)
|
||||
|
||||
// Linearly interpolate cam.zoom towards zoom_target
|
||||
lerp_factor := config.cam_zoom_smooth_snappiness // Adjust this value to control the interpolation speed
|
||||
cam.zoom += (workspace.zoom_target - cam.zoom) * lerp_factor * f32(delta_time)
|
||||
cam.zoom = clamp(cam.zoom, 0.05, config.cam_max_zoom) // Ensure cam.zoom stays within bounds
|
||||
cam.zoom = clamp(cam.zoom, config.cam_min_zoom, config.cam_max_zoom) // Ensure cam.zoom stays within bounds
|
||||
case .Digital:
|
||||
zoom_delta := input.mouse.vertical_wheel * config.cam_zoom_sensitivity_digital
|
||||
workspace.zoom_target = clamp(workspace.zoom_target + zoom_delta, 0.05, config.cam_max_zoom)
|
||||
workspace.zoom_target = clamp(workspace.zoom_target + zoom_delta, config.cam_min_zoom, config.cam_max_zoom)
|
||||
cam.zoom = workspace.zoom_target
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user