extends Camera2D var raw_zoom := 0.0 func scroll(diff: Vector2): position -= diff func change_zoom(diff: float): raw_zoom = clampf(raw_zoom + diff, -2, 2) var z := pow(2.0, raw_zoom) zoom = Vector2(z, z)