有没有办法在spritekit swift中读取/获取fps

有没有办法在spritekit swift中读取/获取fps,swift,sprite-kit,frame-rate,Swift,Sprite Kit,Frame Rate,在swift中是否有获取fps值的方法 不,我不是说改变帧间隔 不,我不是说 skView.showsFPS = true 我想获得fps,这样我就可以让我的应用程序等到fps达到60后再开始游戏。出于某种原因,我的应用程序偶尔会以每秒40帧的速度“卡住”,并持续5秒,然后慢慢地爬回60帧。这通常在我调用ControlCenter时发生 这里的原始问题:你可以自己计算 在场景中执行以下操作: var lastUpdateTime: TimeInterval = 0 func update(c

在swift中是否有获取fps值的方法

不,我不是说改变帧间隔 不,我不是说

skView.showsFPS = true
我想获得fps,这样我就可以让我的应用程序等到fps达到60后再开始游戏。出于某种原因,我的应用程序偶尔会以每秒40帧的速度“卡住”,并持续5秒,然后慢慢地爬回60帧。这通常在我调用ControlCenter时发生


这里的原始问题:

你可以自己计算

在场景中执行以下操作:

var lastUpdateTime: TimeInterval = 0

func update(currentTime: TimeInterval) {
    let deltaTime = currentTime - lastUpdateTime
    let currentFPS = 1 / deltaTime
    print(currentFPS)

    lastUpdateTime = currentTime
}

gameView.showsStatistics=true

这没有意义。你需要弄清楚为什么你的应用程序需要一段时间来预热,而不是通过检查FPS值来解决这个问题。我正试图自己解决这个问题。我已经浏览了多个关于stackoverflow的类似问题,但对于它为什么会这样做,并没有确切的答案。适用于其他用户的解决方案不适用于我的情况。我也很想知道为什么它会这样做,而不是寻找解决方法,但在花了很多天调试之后,我仍然没有任何线索。好问题。在游戏开发中,任何时候都需要了解FPS是完全正常的。