请问下我用高斯模糊写了个模糊的shader,但是用相机render一次的时候会卡顿300ms,这个有什么办法优化吗?

需要用差一点的安卓手机
log.info(“blurCamera render start”);
this.blurCamera.render();
let data = this.blurCamera.targetTexture.readPixels();
log.info(“blurCamera render end”); 从start到end大概用了400ms

一, 缩小Texture, 模糊程度比较高时, 200x200的图片放大5倍, 跟1000x1000的图片, 视觉效果差别不大.
二, 将模糊拆分成两次做, 先一次X方向的模糊, 得到Sprite后, 再将Sprite进行一次Y方向的模糊. 也就是shader的NxN次循环转成了2xN次. 实践证明效果是差不多的.
这样基本就可以实现实时模糊了.

2赞