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