iOS 离屏渲染

1.什么是离屏渲染

  • on-screen Rendering

意为当前屏幕渲染,指的是GPU的渲染操作是在当前用于显示的屏幕缓冲区中进行的

  • off-screen Rendering

意为离屏渲染,指的是GPU在当前屏幕缓冲区以外新开辟了一个缓冲区进行渲染操作,通俗的说就是当我们设置某些UI图层的视图属性时候,被指定为未预合成之前,不能用于直接显示的时候,就会触发离屏渲染

2.何时离屏渲染

  • 设置圆角(同时设置maskToBounds=YES)
  • 图层蒙版
  • 阴影
  • 光栅化

3.为何需要避免离屏渲染

因为在离屏渲染的时候会触发GPU的多通道渲染管线,增加了额外的开销,可能导致CPU和GPU在当前Vsync信号到来之前(1/60s)无法完成工作,导致页面卡顿和掉帧.另外也会创建新的缓冲区,会照成上下文切换带来开销

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

推荐阅读更多精彩内容

  • 在进行iOS的应用开发过程中,有时候会出现卡顿的问题,虽然iOS设备的性能越来越高,但是卡顿的问题还是有可能会出现...
    飞鱼湾阅读 4,526评论 0 24
  • GPU渲染机制 CPU 计算好显示内容提交到 GPU,GPU 渲染完成后将渲染结果放入帧缓冲区,随后视频控制器会按...
    Cdream阅读 647评论 0 0
  • GPU渲染机制: CPU 计算好显示内容提交到 GPU,GPU 渲染完成后将渲染结果放入帧缓冲区,随后视频控制器会...
    齐滇大圣阅读 41,977评论 15 230
  • GPU渲染机制:CPU 计算好显示内容提交到 GPU,GPU 渲染完成后将渲染结果放入帧缓冲区,随后视频控制器会按...
    zgsddzwj阅读 203评论 0 0
  • 三周时间,读了易经,稀里糊涂,只怪我们中国文化过于精深博大,当然也与自己的悟性有很大关系。当然这里粗浅的心得还是有...
    783397a1d2ae阅读 181评论 0 1