Я использую OpenGL для рисования в 2D. Я пытаюсь наложить текстуры с альфа. Я сделал это:
glDisable(GL_DEPTH_TEST);
glDepthMask(GL_FALSE);
glBlendFunc(GL_SRC_ALPHA,GL_ONE_MINUS_SRC_ALPHA);
glEnable(GL_BLEND);
А потом я рисую в обратном z-порядке. Тем не менее, я получаю странные изменения цвета. Вот пример чего-то, что должно плавно переходить от одного изображения к другому (на самом деле, изображения в этом конкретном случае являются бесшовными, но это не всегда происходит (поэтому нет, я не могу просто не иметь альфа)):
Видите серое пятно посередине? Этот патч отсутствует ни в одном из исходных PNG. Кто-нибудь знает, что вызывает это и как это исправить? Возможно, совершенно другая альфа-стратегия?
РЕДАКТИРОВАТЬ: Для справки, вот две текстуры смешиваются: