如何在 Unity 中强制启用垂直同步?

问题描述 投票:0回答:1

我正在使用 Unity 引擎。

有些播放器在视频驱动程序设置中关闭垂直同步。

这会导致 FPS 非常高并且显卡过热。

此代码不起作用:


    QualitySettings.vSyncCount = 1;
    Application.targetFrameRate = 60;

unity-game-engine unityscript
1个回答
0
投票

根据 Application.targetFrameRateQualitySettings.vSyncCount 文档:

QualitySettings.vSyncCount = 1;

将帧速率与屏幕刷新率同步。如果视频驱动程序中的垂直同步被关闭,则此功能将不起作用。这里的另一个问题是当今许多屏幕都以 120Hz 或 144Hz 工作。

Application.targetFrameRate = 60;

设置 Unity 尝试渲染游戏的帧速率。所以这对你来说是正确的方法。但是,如果将

QualitySettings.vSyncCount
设置为 0 以外的任何值,则 Unity
 会忽略 
Application.targetFrameRate 。移动平台是例外,其中
vSyncCount
根本没有任何效果,而 VR 平台则两个值均由 VR SDK 控制。

因此,您需要将 vSyncCount 设置为 0:

QualitySettings.vSyncCount = 0;
Application.targetFrameRate = 60;

另请注意,在编辑器中运行时,这可能不会产生预期的效果,请进行构建来测试它。

© www.soinside.com 2019 - 2024. All rights reserved.