14 lines
345 B
GDScript

extends RigidBody2D
@onready var cam = $Camera2D
# zoom range: from close-in to far-out
var min_zoom = Vector2(0.5, 0.5)
var max_zoom = Vector2(0.2, 0.2)
var max_speed = 5000.0 # max expected speed
func _process(delta):
var speed = linear_velocity.length()
var t = clamp(speed / max_speed, 0.0, 1.0)
cam.zoom = min_zoom.lerp(max_zoom, t)