首页 > 其他分享 >渲染学习之掉帧原因

渲染学习之掉帧原因

时间:2022-10-22 10:31:14浏览次数:40  
标签:缓存 一帧 渲染 之掉 学习 计算 GPU 数据 CPU

帧,就是影像动画中最小单位的单幅影像画面,相当于电影胶片上的每一格镜头。一帧就是一幅静止的画面,连续的帧就形成动画,如电视图图像等。

帧率

帧率(每秒帧数),简单地说,就是在1秒钟时间里传输的图片的帧数,也可以理解为图形处理器每秒钟能够刷新几次,通常用fps(Frames Per Second)表示。

一般要求连贯性的话,帧数至少要高于每秒约10至12帧的时候,人眼才会认为是连贯的,此现象叫做“视觉暂留现象”,是由人眼的生物构造决定的。通过这个现象,早期的无声电影通过手摇驱动,将画面快速播放,就能让人感觉在播放完整连续的视频。

在典型的显示系统中,不管是手机还是电脑,一般都涉及到三个部分:

  • CPU,中央处理器。用于计算数据,信息处理。

<!---->

  • GPU,图形处理器。用于处理图像图形,也就是俗称的显卡。

<!---->

  • display,显示屏幕。用于展示画面,也就是我们的手机屏幕、电脑显示器。

整个显示过程就是:

  • CPU计算屏幕需要的数据,然后交给GPU。

<!---->

  • GPU对图像进行处理绘制,然后存到缓存区。

<!---->

  • display再从这个缓存区读取数据,显示出来。

详细过程:16.6ms一到,系统就发送了VSync信号,然后屏幕会从缓存区获取了新的一帧图像并显示出来,与此同时,CPU也开始了下一帧数据的计算,然后计算好交给GPU,最后放到缓存区,等待下一次VSync信号。

掉帧原因:

1、硬件原因。硬件比较差也就是CPU和GPU计算不给力,导致一帧的数据没准备好,所以掉帧。

2、软件原因。在硬件够用的情况下,App或者游戏的一帧数据计算繁杂,嵌套太多或者图太大,也会导致下一帧数据不能在16.6ms中被准备好,导致掉帧。

3、网络原因。在硬件软件都正常情况下,由于网络波动,CPU的计算数据都没有从网络上获取到,那么肯定会导致CPU数据的准备延迟,最终导致掉帧。

标签:缓存,一帧,渲染,之掉,学习,计算,GPU,数据,CPU
From: https://blog.51cto.com/u_14689064/5785696

相关文章

  • 红黑树学习笔记
    代码的红黑树部分138行。本文的图中,红/黑点代表红/黑色节点,蓝点代表无关点(或者子树),绿点代表无所谓颜色的点。红黑树的性质:是一颗二叉搜索树每个节点是红色或者黑色根......
  • 20201318李兴昕学习笔记八
    第五章:定时器及时钟服务知识点归纳总结:本章讨论了定时器和定时器服务;介绍了硬件定时器的原理和基于Intelx86的PC中的硬件定时器;讲解了CPU操作和中断处理;描述了Linux......
  • 珂朵莉树学习笔记
    0x00前言0x01关于其命名  最开始出现在CodeforcesRound#449(Div.1)C题上,这位珂学家在题解中用了一种玄学的数据结构解题,开始命名为ODT树(OldDriverTree,老......
  • Python学习三天计划-2
    一、函数函数:是组织好的,可重复使用的,用来实现特定功能的代码段。优点:可供重复利用的代码段提高程序的复用性减少重复性代码提高开发效率1.定义deffunc1():......
  • 2022-2023-1 20221312 《计算机基础与程序设计》第八周学习总结
    作业信息班级链接:https://edu.cnblogs.com/campus/besti/2022-2023-1-CFAP作业要求:https://www.cnblogs.com/rocedu/p/9577842.html#WEEK08作业目标:面向对象,面向过程,顶点,......
  • Pytorch学习笔记
    两大强大的工具函数:1.dir(),打开一个包,输出包内含有的其他子类2.help(),帮助文档1help(torch.cuda.is_available)2Helponfunctionis_availableinmoduletorch.cuda......
  • flink入门学习
    一:为什么使用flink1.jdk实现流式处理packagenet.xdclass.app;importnet.xdclass.model.VideoOrder;importjava.util.Arrays;importjava.util.List;importjav......
  • 2022-2023-1 20221408《计算机基础与程序设计》第八周学习总结
    第八周学习总结作业信息这个作业属于哪个课程:https://edu.cnblogs.com/campus/besti/2022-2023-1-CFAP这个作业的要求在哪里:https://www.cnblogs.com/rocedu/p/9577842......
  • Python学习:列表和字典练习题
    找出列表list中大于100的值,给字典dic的k1键,小于等于100的值,给字典dic的k2键'''提示:创建字典的两种方式ex:'''v1=[2,3,4,5,]v2=88dic1={'k1':v1,'k2':v2,}......
  • 自然语言处理学习笔记-lecture07-句法分析01
    句法分析(syntacticparsing)的任务就是识别句子的句法结构(syntacticstructure)。包含短语结构分析(Phraseparsing)和依存句法分析(Dependencyparsing)短语结构分析......