class_name Math static func damp(from: Variant, to: Variant, weight: float, smoothing: float = 0.75): return lerp(from, to, 1 - exp(-smoothing * weight)) static func dampf(from: float, to: float, weight: float, smoothing: float = 0.75): return lerpf(from, to, 1 - exp(-smoothing * weight)) static func damp_angle(from: float, to: float, weight: float, smoothing: float = 0.75): return lerp_angle(from, to, 1 - exp(-smoothing * weight)) static func damp_spherical(from: Vector3, to: Vector3, weight: float, smoothing: float = 0.75): return from.slerp(to, 1 - exp(-smoothing * weight)) static func from_to_rotation(from: Vector3, to: Vector3) -> Quaternion: var axis := from.cross(to).normalized() var angle := from.angle_to(to) return Quaternion(axis, angle)