C# 使用或不使用VSync
我正在决定是否将VSync用于我一直在使用OpenGL开发的新游戏。我们的目标是为用户提供最佳的游戏体验,并在性能和质量之间取得良好的平衡。此游戏设计用于在较旧(英特尔/上网本)计算机和较新(NVidia/i7桌面)计算机上运行。然而,我知道VSync的目的是防止撕裂;即使关闭了VSync,我也无法重现这个令人撕裂的问题。提供最佳体验;VSync应该打开还是关闭?为了获得最佳的用户体验,请在菜单中放置一个选项以打开/关闭VSync。这样用户就可以决定。您可能无法复制撕裂,但在某些系统上这确实是一个问题C# 使用或不使用VSync,c#,opengl,opentk,vsync,C#,Opengl,Opentk,Vsync,我正在决定是否将VSync用于我一直在使用OpenGL开发的新游戏。我们的目标是为用户提供最佳的游戏体验,并在性能和质量之间取得良好的平衡。此游戏设计用于在较旧(英特尔/上网本)计算机和较新(NVidia/i7桌面)计算机上运行。然而,我知道VSync的目的是防止撕裂;即使关闭了VSync,我也无法重现这个令人撕裂的问题。提供最佳体验;VSync应该打开还是关闭?为了获得最佳的用户体验,请在菜单中放置一个选项以打开/关闭VSync。这样用户就可以决定。您可能无法复制撕裂,但在某些系统上这确实是一
至于什么应该是默认设置,我不确定,我想这是你的选择。我更喜欢在默认情况下关闭垂直同步,因为它在启用时会降低一点性能,而且大多数人都不知道或不关心它,但也有很好的理由在默认情况下启用它。我认为VSync的默认设置应该是打开的(基于我所有的游戏,而不是编程经验:)。仅仅因为你没有看到它,并不意味着你不应该遵循一个好的规则 练习
- 也许你不能像其他玩家那样盯着屏幕看
- 也许当你看到一点点眼泪时,你并不像某些玩家那样恼火
- 也许你的特定屏幕比其他屏幕更能隐藏撕裂
正如schanaader所提到的,通常游戏会在视频设置菜单中的某个位置将vsync作为一个配置选项。对于那些不知道vsync意味着什么的用户,默认值应该仍然是“开”,如果用户足够了解,他们可以选择调整它,看看有什么不同关于这个问题有很多可以说的。让我数一数:
time+=16.7ms
John Carmack一直要求使用一种模式,该模式可以“以60Hz进行vsync,但如果我错过了最后期限,则不同步”,我认为这就是原因所以底线答案是没有完美的答案。这真的取决于什么对你的比赛更重要。你需要注意的事情:你想要达到哪种帧速率,输入延迟有多重要,游戏中有多少运动,功率是否会成为一个问题 @schnaader:你如何解释一个不懂技术的用户这样一个选项的用途以及他们什么时候可能需要它?@Matti-大多数玩家都会意识到撕裂,有些玩家会准备接受它,因为他们从游戏中获得了额外的2%(或任何东西)的帧率。@ChrisF:什么样的玩家会在游戏机上玩netbook@Matti-哎呀!我本想回答,但当我看到这个答案时,我停止阅读(我的不好),只是回应了你的评论。@Matti:好问题,但我认为这是一个不同的问题。我看到的大多数游戏都有一个“VSync”选项,大多数甚至不使用长格式的“垂直同步”。我相信有很好的方法来解释它。你确定当你在应用程序中关闭VSync时,图形卡驱动程序无论如何都不会保持它打开吗?通常存在允许替代应用程序设置的驱动程序设置。根据我的经验,屏幕撕裂是一个很容易复制的问题。非常好的观点。作为一名游戏玩家,我必须使用VSync,因为撕裂会完全破坏游戏,但微口吃更糟糕。