windows-7 - 如何在 DirectX10 中启用垂直同步

标签 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++ 的代码引用也可以。我会自己翻译。

谢谢

最佳答案

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

SwapChain.Present(0, PresentFlags.None);

关于windows-7 - 如何在 DirectX10 中启用垂直同步,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3260698/

相关文章:

c# - SlimDX 中的二维三角形

windows-7 - 下载什么版本的SDK?

java - tr Locale、Windows 7 和 Linux 中的日期格式给出 2 个结果

windows-7 - Windows 7 功能区 : How to specify "Four buttons, two big, two small"?

directx - 使用 WinRT 组件的 C# XAML Metro 应用程序在异步方法上调用 task.wait() 或 task.get() 抛出 : Unhandled exception 0xc0000409

directx - DirectSound 是 Windows 的最佳音频抽象层吗?

c++ - 我应该转向面向对象编程(黑匣子)吗?如何转向?

c# - SlimDX加载预编译着色器

android - 无法安装Android SDK 17

c# - .NET 中的快速矢量数学 - 有哪些选项?