成都私人做网站,开网站 主机 服务器,西宁思帽网站建设,哪里有做网站的素材了解Vsync#xff0c;首先我们需要认知如下问题
什么是GPUCPU在渲染之前起到什么作用什么是帧#xff0c;帧率什么是画面撕裂
什么是GPU
GPU为图形处理器#xff0c;又称显示核心、视觉处理器、显示芯片。 是一种专门在个人电脑、工作站、游戏机和一些移动设备(如平板电脑…了解Vsync首先我们需要认知如下问题
什么是GPUCPU在渲染之前起到什么作用什么是帧帧率什么是画面撕裂
什么是GPU
GPU为图形处理器又称显示核心、视觉处理器、显示芯片。 是一种专门在个人电脑、工作站、游戏机和一些移动设备(如平板电脑、智能手机等)上做图像和图形相关运算工作的微处理器。主要用于画面的渲染。
CPU在渲染之前起到什么作用? 在屏幕显示一个画面时候他需要获取GPU合成的图层数据进行渲染而GPU进行图层合成时候他的数据来自于CPU计算好的数据。 也就是说一个画面的显示过程为CPU通过程序的业务代码运算产生的数据运输到GPU进行图层合成发送到屏幕进行渲染显示。
什么是帧帧率
帧fps是一个画面的显示屏幕一秒显示多少个帧(画面)称为帧率。平时看到的60fps,代表一秒绘制60帧反过来可以知道60fps的渲染一帧大概是需要16.66毫秒。人眼的正常帧率范围是30到60帧之间如果在程序运行时候产生的画面帧率比这范围更低视觉看到的画面会出现卡顿也就是人们说的掉帧。通常手机屏幕的渲染帧数为60fps高性能的手机为120fps。因此显示画面的fps越高意味画面越流畅 什么是屏幕撕裂
通过上面的了解我们已经知道一个画面的绘制流程如下图 每一个帧在显示器上绘制都需要从buffer缓冲区上拿去数据进行刷新屏幕。在早期只有一个缓冲区并没有绘制同步概念如果一个画面一边读取一边绘制还没完全完毕时候突然缓冲区的数据被GPU合成的数据替换就会造成画面有多重画面叠层效果如下图 这种情况称之为画面撕裂。GPU写入过快或写入过慢都会导致画面撕裂。后来为了解决这个问题人们用了双或多缓冲区来解决这个问题 提供一个缓冲区提供给GPU写入提供一个给显示器读取。当GPU写入完毕时候下一次显示器读取时候只需要将这两个数据交换即可。这就避免了GPU生产和显示器读取数据时间问题。那么问题又来了 那么什么时候是写的缓冲区的数据交换到读的buffer缓冲区的最佳时期答案是显示器刚好绘制完一帧的时候。显示器绘制完一帧时候会发送一个信号给GPU如果此时GPU已经写入完成就会把这个数据与读Buffer缓冲区交换数据。这个信号称之为Vsync,也就是垂直信号这就是Vsync的由来。