1.背景
如下图:快速运动的画面会产生拖影现象,影响游戏体验,视觉观感
2.产生的原因
- 当响应时间大于刷新时间的时候,就会产生拖影。因为,上一帧还没有渲染完,又来了新的帧。
3.首先明确上面两个时间的概念
3.1 Response time (响应时间)
- 信号输入与实际图像输出之间所需要的时间
- 指的是液晶显示器对输入信号的反应速度,即液晶颗粒由暗转亮或由亮转暗的时间,分为“电压上升时间”和“电压下降时间”两部份,而通常谈到的响应时间是指两者之和。以毫秒ms为单位。
- 在显示器亮暗变化时,当液晶分子移动较缓时,就会导致响应时间较慢,从而产生了拖影模糊的问题。
3.2 刷新时间
- 两次信号输入之间的间隔时间
- 取决于刷新频率
- 比如,60Hz的屏幕刷新时间就是16.6ms(1000ms/60),这就意味着这块屏幕的响应时间得小于16.6ms才不会出现拖影
4.如何优化响应时间,减少拖影 ?——Overdrive技术
4.1 Over drive 简称OD
- 在显示器亮暗变化时通过改变屏端液晶分子电压,增加对液晶分子的力矩,加速液晶分子的旋转,强制液晶分子在较短的时间内改变排列转换成所设定的穿透率,来实现加快屏响应速度的功能。即改善屏响应时间减少运动模糊。
4.2 基本实现
- 假设,发生一次色彩转化,无论从哪个色彩转化为哪个色彩,所需要的时间都是10ms。
现在要把色彩值从0转化到50。
但是刷新时间只有6.9ms,如果目标值是50的话,那只能转化到50*(6.9/10)=34.5。这样显然不能满足渲染需求。 - Overdrive技术的做法是,将目标值设置为50*(10/6.9)=72.4,这样就可以在6.9ms内将色彩值从0转化为50。这也正是Overdrive的字面含义:超速、超车。
- 如下图,OD Table表,粉红和蓝色的部分就是预设值大于/小于目标值的部分。
5.Overdrive是不是越高越好? ——不是的
5.1 设置过高有什么坏处
- Overdrive值的高低,其实就是预设目标值比真实目标值高出的比例。
如果预设值太高,会出现高过头的现象。比如,上面的例子中,当预设目标值为72.4的时候,可以渲染出色彩值为50的效果;但是如果预设目标值太大,就会是渲染出来的色彩值大于50的效果,这就超过了我们想要的目标值。 - 渲染出来的色彩值小于目标值时,会出现拖影:出现了颜色相同,但是比较浅的影子。
- 渲染出来的色彩值大于目标值时,会出现鬼影(伪影):出现了颜色反向的影子。
5.2 Overdrive设置过高会不会影响屏幕的寿命
- 不会。
- 屏幕色彩值的范围是[0,255],然后有一个对应的电压范围是[Vmin,Vmax]。
Overdrive技术,只是将预设目标值设置的大于真实目标值,以追求可以更快的达到渲染效果,从而缩短响应时间。预设目标值不会大于255,即电压也不会超出正常的使用区间。 - 一般来说,液晶寿命取决于背光,外力损坏。
参考文章:
人生不止编程,还有美妙的生活和美妙的人。心中装着美好,随处是风景 !