我有一个纹理,我想将其应用于glsl着色器。有可能吗,怎么办?例如,我想将此glsl着色器应用于我的纹理:
varying vec4 coord;
uniform sampler2D texture;
uniform float opacity;
void main() {
vec4 col = texture2D(texture, coord.xy);
col.a *= opacity;
gl_FragColor = col;
}
答案 0 :(得分:1)
我会说创建另一个空的并且具有原始纹理相似属性的纹理。将此纹理附加到fbo,然后在着色器中发送fbo和原始纹理。生成您的纹理大小的完整四次通过。从着色器中的原始纹理读取纹理元素,将您的代码从片段着色器中应用,并使用gl_FragCoord将值写入fbo附加纹理。而tge附着的纹理就是您想要的结果。