Изображения и маска в OpenGL ES 2.0

я изучаю OpenGL ES 2.0 и яЯ хотел бы создать приложение, чтобы лучше понять, как оно работает. В приложении есть набор фильтров, которые пользователь может применять к изображениям (я знаю, ничего нового: P).

Один из этих фильтров берет два изображения и маску и смешивает два изображения, показывая их через маску (здесь изображение, чтобы лучше объяснить, что я хочу получить)

На данный момент яЯ действительно смущен, и я неНе знаю, с чего начать создавать этот эффект. Я могу'Я не понимаю, нужно ли мне работать с несколькими текстурами и несколькими FrameBuffers, или я могу просто работать с одним шейдером.

Есть ли у вас подсказка, чтобы помочь мне в этом проекте?

EDIT -------- Я

мы нашли это решение, но когда я использую в качестве линий маски вместо кружков, результат действительно "шероховатый»особенно если линии повернуты.

precision highp float;

varying vec4 FragColor;
varying highp vec2 TexCoordOut;

uniform sampler2D textureA;
uniform sampler2D textureB;
uniform sampler2D mask;

void main(void){
    vec4 mask_color = texture2D(mask, TexCoordOut);

    if (mask_color.a > 0.0){
        gl_FragColor =  texture2D(textureA, TexCoordOut);
    }else {
        gl_FragColor =  texture2D(textureB, TexCoordOut);
    }
}

Возможно, лучше использовать буфер трафарета или смешивание?

Ответы на вопрос(2)

Ваш ответ на вопрос