分屏特效中的模糊分屏特效账忘,好說的菠齿,就是把整張圖片的先做模糊處理佑吝,然后裁剪保留中間1/3的紋理,上層模糊后的紋理經(jīng)過縮放處理在貼圖绳匀∮蠓蓿縮放倍數(shù)大于1.0。分屏的shader 如下:
// 仿抖音模糊分屏
precision mediump float;
uniform sampler2D inputTexture; // 原始圖像
uniform sampler2D blurTexture; // 經(jīng)過高斯模糊的圖像
varying vec2 textureCoordinate;
uniform float blurOffsetY; // y軸邊框模糊偏移值
uniform float scale; // 模糊部分的縮放倍數(shù)
void main() {
// uv坐標(biāo)
vec2 uv = textureCoordinate.xy;
vec4 color;
// 中間為原圖部分
if (uv.y >= blurOffsetY && uv.y <= 1.0 - blurOffsetY) {
color = texture2D(inputTexture, uv);
} else { // 邊框部分使用高斯模糊的圖像
vec2 center = vec2(0.5, 0.5);
uv -= center;
uv = uv / scale;
uv += center;
color = texture2D(blurTexture, uv);
}
gl_FragColor = color;
}
效果如下: