【问题标题】:Unity performance spikes at 30 FPSUnity 性能达到 30 FPS
【发布时间】:2019-02-05 11:01:51
【问题描述】:

我正在使用 Unity 引擎为 iOS 开发一个简单的游戏。我正在使用 Application.targetFrameRate 为我的游戏设置目标 fps。当我将 target fps 设置为 60 或 45 时,游戏可以在任何 iOS 设备上完美运行,但如果我将 targetFrameRate 设置为 30,游戏运行时会出现尖峰和抖动。我不知道为什么会这样(30 fps 肯定没问题)。

我将 Profiler 连接到我的 iPhone,发现当以 30 fps 运行时,一些帧以 200 fps 的速度渲染,而另一些则以 45-60 fps 的速度渲染,这导致了可怕的性能峰值。但是当 targetFrameRate 为 45 或 60 时,这不会发生。

我真的需要我的游戏以 30 fps 的速度运行,以避免发热和节流。有人请帮助我!

【问题讨论】:

    标签: ios unity3d optimization frame-rate


    【解决方案1】:

    我在这里猜测根本问题,但设置 targetFrameRate 通过 CPU 上的逻辑限制帧,而设置 QualitySettings.vSyncCount 让 GPU 处理限制。 我的猜测是,设置QualitySettings.vSyncCount = 2 应该会提供更流畅的体验。您也可以在 QualitySettings 中手动设置,而不是通过代码。

    【讨论】:

    • 非常感谢!这对我有帮助!仍然有一些小尖峰,但它看起来确实比以前平滑了好几倍
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-17
    相关资源
    最近更新 更多