iOS离屏渲染
2020-12-06 本文已影响0人
楼上那只猫
什么是离屏渲染?
CPU屏幕渲染方式有2种。
- On-Screen Rendering (当前屏幕渲染)
指的是GPU的渲染操作是在当前用于屏幕显示的缓冲区。 - Off-Screen Rendering (离屏渲染)
指的是GPU的渲染操作需要额外开辟一个缓冲区进行操作。
当前屏幕渲染,不需要额外开启缓冲区,也不需要开启新的上下文,更不需要进行上下文的切换,缓冲区的切换等操作。
离屏渲染的性能消耗主要体现在新开辟缓冲区,上下文和缓冲区的切换。
离屏渲染的定义
如果要在显示屏上显示内容,我们至少需要一块与屏幕像素数据量一样大的frame buffer,作为像素数据存储区域,而这也是GPU存储渲染结果的地方。如果有时因为面临一些限制,无法把渲染结果直接写入frame buffer,而是先暂存在另外的内存区域,之后再写入frame buffer,那么这个过程被称之为离屏渲染。
image.png