GPU每一帧可以绘制的像素有一个最大限制(就是所谓的fill rate),这个情况下可以轻易地绘制整个屏幕的所有像素。但是如果由于重叠图层的关系需要不停地重绘同一区域的话,掉帧就可能发生了。
GPU会放弃绘制那些完全被其他图层遮挡的像素,但是要计算出一个图层是否被遮挡也是相当复杂并且会消耗处理器资源。同样,合并不同图层的透明重叠像素(即混合)消耗的资源也是相当客观的。所以为了加速处理进程,不到必须时刻不要使用透明图层。
任何情况下,你应该这样做:
这样做减少了混合行为(因为编译器知道在图层之后的东西都不会对最终的像素颜色产生影响)并且计算得到了加速,避免了过度绘制行为因为Core Animation可以舍弃所有被完全遮盖住的图层,而不用每个像素都去计算一遍。
如果用到了图像,尽量避免透明除非非常必要。如果图像要显示在一个固定的背景颜色或是固定的背景图之前,你没必要相对前景移动,你只需要预填充背景图片就可以避免运行时混色了。
如果是文本的话,一个白色背景的UILabel(或者其他颜色)会比透明背景要更高效。
最后,明智地使用shouldRasterize属性,可以将一个固定的图层体系折叠成单张图片,这样就不需要每一帧重新合成了,也就不会有因为子图层之间的混合和过度绘制的性能问题了。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
原文标题:GPU绘图:如何应对混合和过度绘制?
文章出处:【微信号:Imgtec,微信公众号:Imagination Tech】欢迎添加关注!文章转载请注明出处。
相关推荐
介绍
本实例主要通过BlendMode属性来实现挂件和图片的混合,通过更改不同的混合参数,能够展示不同的混合效果。
效果图预览
使用说明 :
进入页面,点击挂件区域,进行挂件和图片的
发表于 05-07 14:45
今天遇到一个贴焊的芯片,只有底视图,按照底视图尺寸绘制了一个封装,可实际焊接(绘制PCB)的时候需要的是顶视图,要不然焊接就不对了,我怎么才
发表于 03-12 15:08
RT,楼主现在绘制了一块PCB,现在由于工作需要,要把这个PCB的3D视图导出到CAD,要求显示所有细节,楼主用的Altiun Desiger 15,目前做了以下的尝试:1.导出为DWG/DXF格式
发表于 09-07 10:59
有人可以确认单个GPU上不支持混合配置文件吗?我知道这在K1 / K2 GPU中不受支持,但听到有关M6 / M60 GPU的一些混合消息。
发表于 10-08 14:07
很多设计师在绘制dwg三视图的过程中都会在图纸的下方绘制一个立体图形,这样能很直观的表现出图形的形状和结构,而在CAD软件中除了绘制三维图形表达外,还有一个方法就是用等轴测投影所
发表于 04-15 16:20
MATLAB高级图形绘制技术
5.1 其他二维图形绘制命令5.2 其他三维图形绘制命令5.3 句柄图形绘制技术5.4 图形可视编辑工具5.5 视角变换与三
发表于 09-03 12:17
•0次下载
MATLAB高级图形绘制技术
5.1 其他二维图形绘制命令5.2 其他三维图形绘制命令5.3 句柄图形绘制技术5.4 图形可视编辑工具5.5 视角变换与三
发表于 09-03 12:18
•0次下载
近几年随着GPU的可编程能力的增强,很多基于点的绘制算法都可以移植到GPU上来实现,这样既可以让CPU有时间来处理其他事,又可以通过GPU提高算法的运行速度。由于目前的
发表于 03-01 14:49
•7次下载
C_与Matlab混合编程在BEAM绘制中的应用_范婵娇
发表于 03-19 11:26
•0次下载
层析图像到计算机内存,构造体素;然后,设置相应体素属性(如插值方式、着色处理、光照参数)等,设计显示不同组织器官的颜色及不透明度传输函数;最后,GPU加栽体素据并进行光线投射算法的计算。实验结果表明,在绘制速度上,GP
发表于 02-05 15:23
•1次下载
添加footprint属性 单个元件添加footprint属性 第一种方法:直接修改 1双击元件,弹出property editor对话框 2在左上角空白处右键-pivot,改变视图 改变后视
发表于 04-24 08:28
•1w次阅读
本文档的主要内容详细介绍的是数据库教程之索引和视图的详细资料概述免费下载包括了:索引基本概念,索引的存储结构及分类,创建和删除索引,视图概念 定义视图,通过
发表于 10-19 10:41
•9次下载
为了解决当不完备混合决策系统中数据动态增加时,静态属性约简方法的计算复杂度高的问题,提出变精度下不完备混合数据的增量式属性约简方法。首先,在变精度模型下给出了利用条件熵度量
发表于 12-07 16:12
•8次下载
这种按需网络研讨会演示了如何解决模拟混合信号设计挑战增加可靠性和速度与AMS垫专业产品开发。
发表于 10-18 07:08
•3527次阅读
该库可以帮助您轻松地在现有视图上布局和绘制分隔线。为了获得更好的性能,请不要再为绘图分隔线创建新视图,而应使用drawable。 安装 方式一: 添加har包到lib文件夹内 在entry
发表于 03-22 10:09
•0次下载
评论