我一直在尝试 DX12 并注意到来自 Microsoft 样本的“全屏”样本的行为非常不同。
主项目: 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
随着
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 应用程序的限制?