离屏渲染

离屏渲染Off-Screen Rendering 指的是GPU在当前屏幕缓冲区以外新开辟一个缓冲区进行渲染操作。还有另外一种屏幕渲染方式-当前屏幕渲染On-Screen Rendering ,指的是GPU的渲染操作是在当前用于显示的屏幕缓冲区中进行。 离屏渲染会先在屏幕外创建新缓冲区,离屏渲染结束后,再从离屏切到当前屏幕, 把离屏的渲染结果显示到当前屏幕上,这个上下文切换的过程是非常消耗性能的,实际开发中尽可能避免离屏渲染。

触发离屏渲染Offscreen rendering的行为:

(1)drawRect:方法

(2)layer.shadow

(3)layer.allowsGroupOpacity or layer.allowsEdgeAntialiasing

(4)layer.shouldRasterize

(5)layer.mask

(6)layer.masksToBounds && layer.cornerRadius

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 相比于当前屏幕渲染,离屏渲染的代价是很高的,这也是iOS移动端优化的必要部分。 OpenGL中,GPU屏幕渲染有以...
    一个人在路上走下去阅读 8,918评论 0 74
  • Core Animation工具用来监测Core Animation性能。它给我们提供了周期性的FPS,并且考虑到...
    F麦子阅读 840评论 0 1
  • README: 引言: 一款优秀的app,流畅很关键,用户使用60的fps的app,跟使用30的fps的app感受...
    uncleRX阅读 30,682评论 31 236
  • GPU渲染机制:CPU 计算好显示内容提交到 GPU,GPU 渲染完成后将渲染结果放入帧缓冲区,随后视频控制器会按...
    ScaryMonsterLyn阅读 1,655评论 0 7
  • 一、添加全局断点 二、查看崩溃日志 1、选中Xcode中的window/orgnizer 2、选中对应的工程的Cr...
    巧克力的qiao阅读 4,178评论 1 5