程序人生 - 游戏帧数很高,为什么还是会卡顿?(一)

简介: 程序人生 - 游戏帧数很高,为什么还是会卡顿?(一)

大家或多或少在生活中会接触到“帧数”。无论在看电影、电视节目也好,玩游戏也好,总会遇到各种的慢镜头、定格或者加速播放等情况,这些其实都与“帧数”息息相关。

那么,到底什么是“帧数”?

其实很简单,我们看到的视频、游戏画面,其实都是由多张静态图片快速连续播放而成的。而在播放的过程中,肉眼会产生“视觉残留”,从而不由自主地把这些图片连在一起,产生“动”的感觉。

我们所说的“帧数”,或者亦可叫做“帧率”,其实就是每秒播放的图片的张数。

比如“9帧”,就是每一秒播放9张图片的意思。


image.png


据研究表明,达到了15帧就足以让人眼产生“动”的感觉,而越高的帧数就会让画面越流畅。

1、电影中的“帧数”

对于早期电影而言,由于当时的拍摄主要依靠手摇式装置,拍摄时难免会造成速度不统一,从而导致影片之间的帧数差异非常大,例如爱迪生偏好用40帧的标准拍摄电影,而卢米埃尔兄弟则是以16帧为标准。

后来发展到有声电影时代,声音也可以被录制到胶片了,但过低的帧数会导致声音失真,甚至出现大量杂音。经过当时的从业人员反复尝试,最后得出结论:如果想要保持声音的清晰度,24帧/秒是最低标准。


image.png


自此之后,“24帧”在100多年来一直是电影行业的拍摄标准。至于为什么是“24”这个数字,而不是更高呢?这其实是当时电影行业之间相互争执之后的结果,标准一旦被沿用,再想要打破就非常困难了。

直到最近,李安导演使用“120帧”的超高帧率拍摄的《双子杀手》上映,引起了广泛的话题,“帧数”标准该不该改变的问题才再一次被重视起来。

 

2、游戏中的“帧数”

相较于电源始终如一的“24帧”黄金标准,电视、电脑游戏的帧率十几年来都是玩家没热议的话题。例如玩家和游戏制作人们一直相互争执不下的“30帧/60帧”的流畅标准。

为什么会有这样的争议呢?

首先,游戏之所以把“流畅帧数”的起点定为30帧,而不是和电影一样的24帧,是因为低于30帧的游戏画面会明显让人感觉到不连贯。

为什么会有这样的差异呢?

这其实就牵扯到“动态模糊”的概念了。不用过于深究这个名词的意思,其实很容易理解。

电影中的每一帧记录的都是一个动态的画面,或者说是一个运动过程,简称“动态帧”:


image.png


对于动态帧而言,观众脑中会自动补全两帧之间的画面,而静态帧由于本身清晰可见,导致观众无法完成脑补,从而觉得卡顿。

换句话说,电影中的每一帧都包含了一段时间内信息,低帧数只会让观众觉得动作慢了;游戏中的每一帧只包含一瞬间的信息,帧数低就会产生卡顿。

因此,“让游戏全程稳定在30帧”直到今天都是游戏行业的硬性标杆。

而之所以是30帧,而不是更高的帧数,原因要两点。首先是当时的显示设备,普遍最高仅能支持到30帧的显示频率;其次则是游戏制作人对游戏画面和游戏帧数之间的一个妥协:由于电脑的性能是一定的,要呈现更好的画面必然要相应的降低帧数。

当然,今后随着技术的进步,同时拥有高画质和高帧率的时代也是必然会来临的。

目录
相关文章
|
1月前
|
存储 前端开发 NoSQL
拿下奇怪的前端报错(四):1比特丢失导致的音视频播放时长无限增长-浅析http分片传输核心和一个坑点
在一个使用MongoDB GridFS存储文件的项目中,音频和视频文件在大部分设备上播放时长显示为无限,而单独播放则正常。经调查发现,问题源于HTTP Range请求的处理不当,导致最后一个字节未被正确返回。通过调整请求参数,使JavaScript/MongoDB的操作范围与HTTP Range一致,最终解决了这一问题。此案例强调了对HTTP协议深入理解及跨系统集成时注意细节的重要性。
|
3月前
|
人工智能 算法
你试过一秒钟出现在世界各地的感觉吗?使用一键人像抠图换背景,让你拥有任意门
准备人像与背景图,访问ModelScope一键抠图换背景工具。上传人像至位置1,背景至位置2。点击按钮稍候,AI快速生成新图,将人像无缝融合至新背景中。体验高效便捷,算法智能精准,边缘处理细腻无痕,支持多样背景选择,输出质量高,适合多种应用场景。
|
6月前
|
JavaScript
uniapp计算视频学习进程,并且下次回来继续播放(不能快进)
uniapp计算视频学习进程,并且下次回来继续播放(不能快进)
214 0
【单片机期中测试】4.按键不同时长控制流水灯
【单片机期中测试】4.按键不同时长控制流水灯
61 0
|
机器学习/深度学习 存储 人工智能
用视频插帧开一个流体力学分析的外挂
阿里云提供的线上AI能力在处理视觉信息方面已经有较为成熟和通用的产品,其中视频插帧可以用于现有超高速相机增强,用于粒子测量PIV、BOS背景纹影等领域。本文为视觉流体力学分析预处理中间件的开发思路、技术架构设计和开发实战中参数的设置介绍,对一些数字影像的基础概念和阿里云视觉人工智能的API细节进行了分析。
433 0
用视频插帧开一个流体力学分析的外挂
|
JSON NoSQL Redis
逆转时间,起死回生——程序报错崩溃后,如何倒回到崩溃的位置?
逆转时间,起死回生——程序报错崩溃后,如何倒回到崩溃的位置?
102 0
|
算法 安全 C++
科学家小蓝来到了一个荒岛,准备对这个荒岛进行探测考察。 小蓝使用了一个超声定位设备来对自己进行定位。为了使用这个设备,小蓝需要在不同的点分别安装一个固定的发射器和一个固定的接收器。小蓝手中还有一个移
科学家小蓝来到了一个荒岛,准备对这个荒岛进行探测考察。 小蓝使用了一个超声定位设备来对自己进行定位。为了使用这个设备,小蓝需要在不同的点分别安装一个固定的发射器和一个固定的接收器。小蓝手中还有一个移
283 0
科学家小蓝来到了一个荒岛,准备对这个荒岛进行探测考察。 小蓝使用了一个超声定位设备来对自己进行定位。为了使用这个设备,小蓝需要在不同的点分别安装一个固定的发射器和一个固定的接收器。小蓝手中还有一个移
|
计算机视觉 开发者
程序人生 - 游戏帧数很高,为什么还是会卡顿?(二)
程序人生 - 游戏帧数很高,为什么还是会卡顿?(二)
298 0
程序人生 - 游戏帧数很高,为什么还是会卡顿?(二)
|
算法
【刷算法】孩子们的游戏(圆圈中最后剩下的数)
【刷算法】孩子们的游戏(圆圈中最后剩下的数)
105 0
|
Java 开发工具 Android开发
干货 | 谁懂这篇文,玩游戏还会卡顿?
干货 | 谁懂这篇文,玩游戏还会卡顿?