如何在DirectX10中启用vsync

时间:2010-07-15 22:53:41

标签: windows-7 directx slimdx directx-10

我正在使用SlimDX开发基于DirectX10的应用程序。我想启用类似于DirectX9的vsync,但fps似乎没有锁定到60Hz(如果我使用Direct9会发生这种情况)。我正在使用此

设置vsync
SwapChain.Present(1, PresentFlags.None);

我做错了吗?

顺便说一下,我正在使用ATI HD5570显卡运行Win7。经过一些谷歌搜索后,我认为ATI可以强制对某些游戏进行vsync。所以我想知道这是否相关。

C ++代码的引用也可以。我会自己翻译一下。

由于

2 个答案:

答案 0 :(得分:1)

SwapChain.Present的第一个参数是syncInterval。 0表示演示应立即发生,不同步。任何其他值表示演示文稿应与指定的下一个垂直空白同步。 所以像这样使用它:

SwapChain.Present(0, PresentFlags.None);

答案 1 :(得分:0)

您可以尝试使用Catalyst Control Center强制执行vsync

enter image description here