陪玩app开发,GPU引发卡顿的优化小技巧

陪玩app开发,GPU引发卡顿的优化小技巧

一、尽量减少视图数量和层次

比如一个UIView视图我们需要创建三个图层,减少到两个或者一个更利于GPU的渲染性能

二、避免短时间内大量图片的显示

我们在处理多张图片时,尽量避免短时间内大量图片的显示,尽可能将多张图片合成一张进行显示

三、GPU纹理尺寸的控制

GPU能处理的最大纹理尺寸是4096x4096,一旦超过这个尺寸,就会占用CPU资源进行处理,所以纹理尽量不要超过这个尺寸

四、减少透明度

减少透明的视图(alpha<1),不透明的就设置opaque为YES
像多个透明的视图,如果有重叠部分,那么重叠部分需要重新计算展示的颜色是什么的,会消耗GPU资源

五、注意离屏渲染

在OpenGL中,GPU有2种渲染方式

1、On-Screen Rendering:当前屏幕渲染,在当前用于显示的屏幕缓冲区进行渲染操作
2、Off-Screen Rendering:离屏渲染,在当前屏幕缓冲区以外新开辟一个缓冲区进行渲染操作

离屏渲染消耗性能的原因

1、本身GPU渲染就会消耗性能
2、需要创建新的缓冲区,又会消耗性能
3、离屏渲染的整个过程,需要多次切换上下文环境,先是从当前屏幕(On-Screen)切换到离屏(Off-Screen);等到离屏渲染结束以后,将离屏缓冲区的渲染结果显示到屏幕上,又需要将上下文环境从离屏切换到当前屏幕

哪些操作会触发离屏渲染?

1、光栅化 layer.shouldRasterize = YES
2、遮罩layer.mask
3、圆角,同时设置layer.masksToBounds = YES、layer.cornerRadius大于0,只满足其中之一不会触发离屏渲染
考虑通过CoreGraphics绘制裁剪圆角,或者叫美工提供圆角图片
4、阴影 layer.shadowXXX
如果设置了layer.shadowPath就不会产生离屏渲染

以上就是陪玩app开发,GPU引发卡顿的优化小技巧, 更多内容欢迎关注之后的文章

posted @   云豹科技-苏凌霄  阅读(5)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
历史上的今天:
2023-02-08 视频直播系统源码,vue中captcha.js生成验证码
2023-02-08 在线直播源码,js获取滚动条的位置
2023-02-08 直播平台搭建,elementui的导航路由递归报错解决
2022-02-08 直播系统源代码,选择验证方式时选择邮箱验证
2022-02-08 短视频平台开发,查找日期和时间的数组
2022-02-08 直播源码网站,新用户登录时的注册页面和登录页面
点击右上角即可分享
微信分享提示