美文网首页
什么是离屏渲染?

什么是离屏渲染?

作者: ZackLi | 来源:发表于2019-04-12 13:14 被阅读0次

渲染又分为离屏渲染与在屏渲染

·On-Screen Rendering

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

·Off-Screen Rendering

意为离屏渲染,指的是GPU在当前屏幕缓冲区以外开辟一个缓冲区进行渲染操作

·何时触发离屏渲染

·圆角(当和maskToBounds=YES一起使用时)
·遮罩
·阴影
·光栅化

·为何要避免

因为会触发 GPU 多通道渲染管线产生了额外的开销,会增加 GPU 的工作量,很有可能导致 CPU 和 GPU 工作耗时加起来的总耗时超出了16.7ms(1秒60FPS,1000/60)导致 UI的卡顿和掉帧,所以我们要避免离屏渲染。

总结

当我们设置一些 UIView 的图层属性,标记位于合成之前,不能用于直接显示的时候。那么就触发了离屏渲染。典型的如圆角属性包括一些蒙层遮罩。 离屏渲染起源于 GPU 层面,指的是 GPU 新开辟的一块缓冲区进行渲染操作。

离屏渲染的查看方式 Debug->ViewDebug->Off-Screen Rendering Yellow

附Demo:https://github.com/ZeKunLi/iOS-InterView/tree/master/%E5%9C%86%E8%A7%92%E7%A6%BB%E5%B1%8F%E6%B8%B2%E6%9F%93

相关文章

  • 关于离屏渲染

    1.什么是离屏渲染 2.离屏渲染的触发方式 3.离屏渲染的意义 4.离屏渲染的不足 1.什么是离屏渲染 要了解离屏...

  • 离屏渲染

    1.什么是离屏渲染? 2.离屏渲染会引起什么问题? 3.什么情况下会发生离屏渲染? 1.什么是离屏渲染 离...

  • 离屏渲染

    什么是离屏渲染? 对离屏渲染的理解。 在屏渲染 On-Screen Rendering GPU的渲染操作是在当前用...

  • UI离屏渲染

    什么是离屏渲染,你对离屏渲染是怎么理解的? 先看在屏渲染概念: 可以说在屏渲染指的GPU层面的一个概念。那么离屏渲...

  • iOS总结

    一、什么是离屏渲染?什么情况下会导致离屏渲染?为什么要尽量避免离屏渲染? 如果要在显示屏上显示内容,我们至少需要一...

  • iOS-离屏渲染探索

    iOS项目性能优化时,不得不提到离屏渲染,为了提升性能,我们要求尽量减少离屏渲染的发生。 那,什么是离屏渲染?离屏...

  • 离屏渲染

    什么是离屏渲染?如何发生的呢?? 在屏渲染: 指 GPU的渲染操作是在当前用于显示的屏幕缓冲区发生的 离屏渲染: ...

  • 史上最接地气的“离屏渲染”解释

    各位看官在面试的时候 是不是经常被面试官问到什么是离屏渲染? 哪些属性会引起离屏渲染?为什么会导致离屏渲染? 相信...

  • 离屏渲染

    离屏渲染是在iOS开发过程中脱离不了的话题,那么什么是离屏渲染以及哪些情况会导致离屏渲染呢?以及离谱渲染有哪些优势...

  • UI视图及UITableView流畅性优化

    一.离屏渲染 1. 在屏渲染和离屏渲染 在屏渲染是指在当前用于显示的屏幕缓冲区进行GPU渲染操作 离屏渲染是指在当...

网友评论

      本文标题:什么是离屏渲染?

      本文链接:https://www.haomeiwen.com/subject/neqcwqtx.html