知识点总结

iOS 离屏渲染

2019-04-09  本文已影响14人  飞不越疯人院

不论是在屏渲染还是离屏渲染都是在GPU层面的;


什么时候会触发离屏渲染?

  1. 设置图层圆角(和maskToBounds一起使用);
  2. 设置图层蒙版(masks);
  3. 设置阴影效果(shadows);
  4. 设置光栅化(shouldRasterize);

为什么要避免离屏渲染?
16.7ms内CPU和GPU要完成一帧界面绘制, 离屏渲染会触发OpenGL多通道渲染管线,会造成额外的GPU工作量,导致GPU部分耗时过长进而造成界面掉帧;
离屏渲染会创建新的渲染缓冲区造成内存上的开销; 由于多通道渲染管线界面合成, 要进行上下文的切换造成额外GPU开销,

上一篇下一篇

猜你喜欢

热点阅读