在WinForms中强制VSYnc或限制FPS - c#

时间:2013-07-17 05:21:51

标签: c# winforms sfml vsync

我已经搜索过但无法找到不涉及XNA的结果。

基本上,我正在使用附加到表单中面板句柄的SFML的C#绑定来创建地图编辑器。它的运行速度为550 FPS,导致我的主循环被调用太多,使用了太多资源(小型地图编辑器的CPU占10%)。

我只需要60 fps,而且我知道这将导致cpu使用率大幅下降。

有谁知道怎么做?我听说这是不可能的,因为WinForms无法访问图形驱动程序VSync设置;但必须有办法,对吗?

感谢。

1 个答案:

答案 0 :(得分:1)

我最终使用WinForms计时器进行游戏循环处理。通过设置滴答的间隔,我得到一个有效的60 FPS。

这会将CPU使用率降低到0.1%,同时仍具有相同的功能。