(本节很大程度上归功于 David Kastrup<dak@gnu.org>))
在固定的点时钟频率下,如果您的显示器的垂直电路能够稳定地支持隔行扫描,那么隔行扫描显示器将比非隔行扫描显示器具有明显更少的可察觉闪烁。这正是最初发明隔行扫描模式的原因。
隔行扫描模式因其在相同的垂直扫描频率 VSF(广告中通常给出的频率)下不如非隔行扫描模式而声名狼藉。但是,它们在相同的水平扫描速率下绝对更胜一筹,而这通常是您的显示器/显卡的决定性限制所在。
在固定的刷新率(或半帧率,或 VSF)下,隔行扫描显示器会闪烁得更厉害:90Hz 隔行扫描显示器不如 90Hz 非隔行扫描显示器。然而,它只需要一半的视频带宽和一半的水平扫描速率。如果您将其与具有相同点时钟和相同扫描速率的非隔行扫描模式进行比较,它将大大优越:45Hz 非隔行扫描是无法忍受的。使用 90Hz 隔行扫描,我使用我的 Multisync 3D(在 1024x768 分辨率下)工作多年,并且非常满意。我猜您至少需要 70Hz 非隔行扫描显示器才能获得类似的舒适度。
但是,您需要注意以下几点:仅在高分辨率下使用隔行扫描模式,以便交替点亮的线彼此靠近。您可能需要调整同步脉冲宽度和位置,以获得最稳定的线条位置。如果交替的线条是明暗相间的,隔行扫描会跳跃并引起注意。我有一个应用程序为菜单背景选择这种点图案(XCept,据我所知,没有其他应用程序这样做,幸运的是)。我切换到 800x600 来使用 XCept,因为否则它真的会伤害我的眼睛。
出于同样的原因,请使用至少 100dpi 的字体,或其他水平笔画至少有两条线粗的字体(对于高分辨率,否则没有任何意义)。
当然,当您的硬件支持具有相似刷新率的非隔行扫描模式时,永远不要使用隔行扫描模式。
但是,如果您发现对于某些分辨率,您正在将显示器或显卡推向其上限,并且获得令人不满意的闪烁或失真(带宽超出)显示,您可能需要尝试使用隔行扫描模式来处理相同的分辨率。当然,如果您的显示器的 VSF 已经接近其极限,这将是无用的。
隔行扫描模式的设计很简单:像非隔行扫描模式一样进行设计。只需要考虑另外两个因素:您需要一个奇数的垂直总行数(模式行中的最后一个数字),并且当您指定“interlace”标志时,显示器的实际垂直帧率会加倍。如果您指定的模式看起来像 45Hz 模式,但带有“Interlace”标志,则您的显示器需要支持 90Hz 帧率。
例如,这是我的 1024x768 隔行扫描的 modeline:我的 Multisync 3D 将支持高达 90Hz 的垂直频率和 38kHz 的水平频率。
ModeLine "1024x768" 45 1024 1048 1208 1248 768 768 776 807 Interlace |
这两个限制都已在此模式下几乎耗尽。指定相同的模式,只是没有“Interlace”标志,仍然几乎达到显示器水平容量的极限(严格来说,略低于垂直扫描率的下限),但会产生令人难以忍受的闪烁显示。
基本设计规则:如果您设计的模式低于显示器垂直容量的一半,请使垂直总行数为奇数并添加“Interlace”标志。在大多数情况下,显示质量应该会大大提高。
如果您有一个非隔行扫描模式,在其他方面耗尽了显示器的规格,其中垂直扫描率比显示器的最大值低约 30% 或更多,那么手动设计一个隔行扫描模式(可能具有更高的分辨率)可能会带来更好的结果,但我不会保证。