获取从GLSL着色器到opengl的纹理输出
我有一个GLSL着色器,它比较两个遮罩,并用最高值的图像对像素着色。我想将其输出到一个纹理,该纹理在每个像素处存储最高的遮罩 我有img1,img2,img3和mask1,mask2,mask3 现在着色器执行以下操作获取从GLSL着色器到opengl的纹理输出,opengl,glsl,textures,Opengl,Glsl,Textures,我有一个GLSL着色器,它比较两个遮罩,并用最高值的图像对像素着色。我想将其输出到一个纹理,该纹理在每个像素处存储最高的遮罩 我有img1,img2,img3和mask1,mask2,mask3 现在着色器执行以下操作 if mask1 >= mask2 gl_FragColor = img1 else gl_FragColor = img2 因此,如果第一个像素的mask1是最高的,我想在我的输出纹理中存储0,并对每个像素执行该操作 然后在完成着色器执行后,我希望在我的opengl代码
if mask1 >= mask2
gl_FragColor = img1
else
gl_FragColor = img2
因此,如果第一个像素的mask1是最高的,我想在我的输出纹理中存储0,并对每个像素执行该操作
然后在完成着色器执行后,我希望在我的opengl代码中有一个纹理,它为每个像素存储0或1,显示哪个遮罩具有较大的值
有没有可能做到这一点?您对此有什么问题?渲染到纹理或在片段着色器中执行逻辑?因此,在每个像素处,我将使用img1或img2为屏幕着色。此外,我希望另一个纹理存储0或1,如果是mask1,则为0,如果是另一个,则为1,然后在我的opengl代码中使用该纹理