我一直在試用DX12並注意到微軟樣本中的「全屏」樣本行爲非常不同。Windows Unversal應用程序 - FPS限於監視器刷新/ VSync強制?
主要項目: 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
我使用steptimer.h從https://github.com/Microsoft/DirectX-Graphics-Samples/blob/master/Samples/Desktop/D3D12Multithreading/src/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應用程序的限制嗎?
UWP的不能更新速度比刷新,以避免撕裂。它目前一直處於開啓狀態。 –
@ChuckWalbourn多數民衆贊成在我觀察,你知道任何文件或如果有計劃改變它,以允許定製? – John