Я новичок в программировании OpenGL и GLSL.В последнее время мне нужно сделать маскировку от руки на изображении, как показано ниже.Как я могу добиться этого, используя Fragment Shader?
В настоящее время я пытаюсь это сделать с помощью фрагментного шейдера ниже, но на изображении ничего не меняется.
precision mediump float;
varying vec2 v_TexCoordinate;
varying vec2 v_TexCoordinate2;
uniform sampler2D u_Texture;
uniform sampler2D u_Texture2;
uniform bool u_alpha_test_enable;
void main()
{
float mask = texture2D(u_Texture, v_TexCoordinate).a;
// if (u_alpha_test_enable && mask < 0.4) discard;
gl_FragColor = texture2D(u_Texture2, v_TexCoordinate2) * vec4( 1,1,1,mask );
}
Мне нужен эффект, подобный изображению ниже.