離屏渲染

On-Screen Rendering 在屏渲染

意為當(dāng)前屏幕渲染,指的是GPU的渲染操作是在當(dāng)前用于顯示的屏幕緩沖區(qū)中進(jìn)行的

Off——Screen Rendering 離屏渲染

意為離屏渲染,指的是GPU在當(dāng)前屏幕緩沖區(qū)外新開辟一個緩沖區(qū)進(jìn)行渲染操作

當(dāng)我們設(shè)置某一些UI視圖的圖層屬性,指令為位于合成之前,不能直接顯示的時候,那么就觸發(fā)了離屏渲染。典型的比如說,我們設(shè)置視圖的圓角屬性,包括一些蒙層、陰影等等

什么場景觸發(fā)?

  • 設(shè)置圓角。maskToBounds 同時設(shè)置
  • 圖層蒙版
  • 陰影
  • 光柵化

為何要避免離屏渲染?

在觸發(fā)離屏渲染的時候,會增加GPU的工作量,而增加GPU的工作量很可能會導(dǎo)致GPU和CPU的工作總耗時超出了16.7ms,即屏幕的FPS小于60,從而導(dǎo)致UI的掉幀或卡頓,所以要避免離屏渲染。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容