gles中片元着色器常用

阅读更多

//gl_FragCoord:当前片元相对于窗口位置的坐标值(绝对值,不是相对值哦,也就是说最大值是窗口的宽高)

 

//得到当前像素点的纹理坐标

vec2 texCoord(vec2 viewWH){

  return vec2(gl_FragCoord.x, viewWH.y-gl_FragCoord.y)/viewWH;//得到当前片元的纹理坐标(相对值)

}

 

//一个像素占比:在View中的一个像素,在纹理坐标里占多宽多长

vec2 pixel(vec2 viewWH){

  return vec2(1.0,1.0)/viewWH;

}

 

//沿中心对纹理坐标进行缩放之后的新坐标(也是从0.0到1.0)

vec2 scaleCorByCenter(vec2 originCor,vec2 scaleST){

float nexCorS=(originCor.x-0.5)/scaleST.x+0.5;

float newCorT=(originCor.y-0.5)/scaleST.y+0.5;

return vec2(nexCorS,newCorT);

}

你可能感兴趣的:(opengl,fragment,shader,gles)