2020-04-07

blurlmg.glsl文件文本打开的
下面的东西是什么意思啊?。。。
求大佬解释!
precision mediump float;
uniform sampler2D g_Tex0;uniform vec4 u_color; //rgb,strengthuniform vec4 u_blurInfo; //blurw,blurh,texw,texhuniform vec4 u_blur_off; //blurx,blury,offx,offyuniform float g_Alpha;varying vec2 texCoord;#define PI 3.141593float sigma;float sig2;float _2sig2;float gauss1;float getGaussian(float x, float y){ return gauss1exp(-(xx+yy)/_2sig2);}vec4 blur(){ const float blurw = 9.0; vec4 vec4Color = vec4(0.0,0.0,0.0,0.0); vec2 halfsz=vec2(blurw,blurw)/2.0/u_blurInfo.zw; vec2 startpos=texCoord-halfsz-u_blur_off.zw; vec2 ctexcoord = startpos; vec2 step = 1.0/u_blurInfo.zw; //每个像素 sigma=u_blurInfo.x/3.0;//3σ以外影响很小。即当σ=1的时候,半径为3 sig2= sigmasigma; _2sig2 = 2.0sig2; gauss1 = 1.0/(2.0PIsig2); for(float y = 0.0;y<=blurw; ++y){ ctexcoord.x=startpos.x; for(float x = 0.0;x<=blurw; ++x){ //TODO 纹理坐标的固定偏移应该在vs中处理 vec4Color += texture2D(g_Tex0, ctexcoord)getGaussian(x-blurw/2.0,y-blurw/2.0); ctexcoord.x+=step.x; } ctexcoord.y+=step.y; } return vec4Color;}void main(){ gl_FragColor = blur(); gl_FragColor=g_Alpha;#ifdef TRANSPARENT_MODE gl_FragColor=0.5;#endif}

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值