Windows通用应用程序 - FPS限制监视刷新/ VSync强制?

时间:2016-02-26 20:38:55

标签: directx win-universal-app windows-10-universal directx-12

我一直在尝试使用DX12,并注意到微软样本中的“全屏”样本行为截然不同。

主要项目: https://github.com/Microsoft/DirectX-Graphics-Samples/

桌面全屏示例: https://github.com/Microsoft/DirectX-Graphics-Samples/tree/master/Samples/Desktop/D3D12Fullscreen

UWP全屏示例: https://github.com/Microsoft/DirectX-Graphics-Samples/tree/master/Samples/UWP/D3D12Fullscreen

我正在使用https://github.com/Microsoft/DirectX-Graphics-Samples/blob/master/Samples/Desktop/D3D12Multithreading/src/StepTimer.h

中的steptimer.h

一起
void D3D12Fullscreen::OnUpdate()
{
    m_timer.Tick(NULL);

    if (m_frameCounter == 500)
    {
        // Update window text with FPS value.
        wchar_t fps[64];
        swprintf_s(fps, L"%ufps", m_timer.GetFramesPerSecond());
        SetCustomWindowText(fps);
        m_frameCounter = 0;
    }

    m_frameCounter++;
}

将FPS添加到标题栏

现在桌面版本,我在窗口或全屏模式下获得了数千个FPS。

在UWP中我只限于我的显示器刷新(60)。有没有办法绕过这个提供“无限制”的FPS,或者这是UWP应用程序的限制?

1 个答案:

答案 0 :(得分:0)

现在这是一个操作系统限制,微软最近为Gear Of Wars Ultimate版本的发布引起了争议,这个问题将在今年晚些时候解决。

来源:http://windowsreport.com/microsoft-fix-universal-windows-platform-framerate-limitations/