Я предполагаю, что 3 вещи здесь
- Вы успешно загружаете изображение с помощью альфа-канала (например, .png или .tga)
- У вас включено тестирование глубины
- Вы не изменили режим смешивания, но включили смешивание
Когда OpenGL рисует ваш Quad / Triangle, он также рисует в буфер глубины, независимо от того, является ли этот пиксель прозрачным (или частично прозрачным).
Я предполагаю, что вы сначала рисуете эту прозрачную фигуру, а затем последний объект за ней. OpenGL не будет рисовать задний объект, где буфер глубины уже говорит, что вы нарисовали что-то перед ним, так что вы действительно видите сквозь первый и второй объект, в «небо».
поэтому, если прозрачный объект всегда впереди, нарисуйте его последним. В противном случае все становится довольно сложно (Google "сортировка по глубине")
Я попытаюсь добавить больше деталей к этому, когда вернусь домой.