Не проверял, но путь заключается в следующем.
Встроенные вычисления, которые делает OpenGL, выглядят так:
C = A*s + B*d
Где вы можете выбрать s ид.
Некоторая алгебра дает нам
C = 1 - (1 - A) * (1 - B) =
= 1 - (1 - B) + A*(1 - B) =
= A*(1 - B) + B
Пусть
s = 1 - B
d = 1
и мы получаем желаемое значение.Так что это должно работать:
glBlendFunc(GL_ONE_MINUS_DST_COLOR, GL_ONE);