为什么我的应用(游戏)的帧率很低(30)?(Xcode Sprite Swift)


view.showFPS = true 
-

->显示我的游戏有 30 fps。它非常滞后,我的游戏需要更高的 fps(每秒帧数)。

为什么我的游戏的 fps 较低,如何提高 fps?我注释掉了大部分代码,它仍然具有低 fps!

感谢所有将(尝试)帮助解决此问题的人。

因为你的游戏图形太重和/或你的编程很差。

FPS 代表"每秒帧"。它是对一秒钟内可以绘制的游戏帧数的定量测量。根据您的目标硬件,有许多因素可能导致这种情况。它们是:

  • 图形太多:游戏中的每个精灵或角色,以及背景、敌人、实体等都必须由图形处理器绘制。其中每一个都需要几毫秒才能绘制。如果图形没有针对您的平台进行适当的优化,那么随着图形硬件开始落后于程序的速度,游戏速度会变慢。

  • 低效代码:游戏逻辑将能够非常快速地执行,以便事情正常进行。如果您的游戏使用大量需要时间才能执行的函数,或者必须经常执行许多复杂的计算,那么您的游戏就会变慢。在这种情况下,我建议将游戏逻辑移动到单独的线程或优化代码。在 Xcode 中,Instruments 是一个非常有用的工具,用于识别缓慢的代码段,以便您可以加快速度。

  • 硬件不强大:可能是运行游戏的计算机/设备根本无法处理游戏,而较新的硬件可能能够处理。如果是这种情况,您可能需要考虑放弃对旧硬件的支持。在全屏模式下运行游戏是一种非常有用但经常被忽视的提高性能的方法,因为许多操作系统会暂停合成和其他图形服务,以便您的视频卡可以将更多时间用于程序。

以下是基础知识:

如果您希望游戏以至少 60 FPS 的速度运行,则每一帧必须能够以 .0166666666666 毫秒的速度渲染。正如你可能知道的,这不是很多时间。这就是为什么您必须认真对待上述建议的原因。

最新更新