import Foundation public struct FPSCalculator { private var _accumulator = 0.0 private var _framesCount = 0 public mutating func frame(deltaTime: Double, result: (_ fps: Int) -> Void) { _framesCount += 1 _accumulator += deltaTime if _accumulator >= 1.0 { result(_framesCount) _framesCount = 0 _accumulator = fmod(_accumulator, 1.0) } } }