安卓性能模式:为何是60帧每秒?

听Colt McAnlis讲why 60fps:网络

在应用性能的世界里,你总能听见有人讨论60帧每秒和16毫秒的界限。可是你有没有停下来问,为何是这些数值?若是你是严肃对待性能问题的开发人员,这就是一个值得研究的技术细节。性能

让咱们回想一下,要知道,这些大部分都和硬件——人体硬件有关。人的眼睛和相机不一样,眼睛并不会向大脑发送这个世界的截图。相反,你的大脑会持续的处理你的眼睛传送的可视图像。可是这里并无帧和截图的概念。咱们这种动做是由帧组合的概念,其实是由一个骇客破解。由于若是能足够快速的显示图像,咱们就能够欺骗人类大脑,让他们觉得眼前的帧就是动做。视频

这里咱们须要注意的就是图像显示速度的快慢很大地影响了动做的流畅性,最少你会须要10-12帧每秒的速度才能让人类大脑相信这些图像是一个动做。blog

24帧每秒时,人眼会看到流畅的画面,但这要多亏运动模糊这些视觉效果。另外,24帧每秒对电影行业来讲很是重要,由于它对展示动做来讲已经足够了,同时制做成本也足够低,能知足电影制做的预算。这也就是为何在过去50年里,你所看到的大部分电影,都是24帧每秒的。如今30帧每秒对电影来讲已经足够,可是没有华丽的影院效果,它并无那么令人信服。图片

事实上60帧每秒才是最棒的,不须要那些视觉效果,却依然精彩流畅。大部分人接受不了比这更高的帧数。如今值得注意的是,针对图片的非连续性,人眼的辨识力仍是很是高的。例如,若是你以60帧每秒的速度运动,而后时不时忽然降至20帧每秒,人眼就会察觉到这里面的不流畅性。这会致使用户的紧张和不适应。开发

做为应用开发人员,你的目标很清晰,那就是保证你的应用在60帧每秒,并在用户体验期间保持这个速度不变。60帧每秒意味着做为一个开发人员你要在16毫秒每帧(1000ms / 60frame = 16.666ms/frame)的状况下完成全部的工做,包括输入、计算、网络传输和渲染等。只有这样,你的应用才会有流畅的用户体验。get

事实上,不少问题会致使你的帧会超过16毫秒,为了找到这些问题并解决他们,你要查看其它的Android性能模式内容,别忘了加入咱们的Google+社区一块儿参加讨论。请记住:保持淡定,分析代码,性能很重要。社区

视频地址:https://www.youtube.com/watch?v=CaMTIgxCSqU&index=25&list=PLWz5rJ2EKKc9CBxr3BVjPTPoDPLdPIFCE用户体验

相关文章
相关标签/搜索