OpenGL: Cómo hacer RGBA-> RGBA blitting sin cambiar el alfa de destino

Tengo una textura OpenGL RGBA y mezclo otra textura RGBA utilizando un objeto framebuffer. El problema es que si uso las funciones de mezcla habituales conglBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA), la mezcla resultante hace que la textura de destino alfa cambie, lo que la hace ligeramente transparente para los lugares donde antes era alfa 1. Me gustaría que la superficie de destino alfa nunca cambie, pero de lo contrario, el efecto en los valores RGB debería ser exactamente igual aGL_SRC_ALPHA yGL_ONE_MINUS_SRC_ALPHA. Por lo tanto, las funciones del factor de mezcla deberían ser (As, As, As, 0) y (1-As, 1-As, 1-As, 1). ¿Cómo puedo lograr eso?

Respuestas a la pregunta(2)

Su respuesta a la pregunta