Я пытаюсь сгенерировать текстуру с QImage
а также QOpenGLTexture
,
Я установил QImage
цветовой формат до RGBA8888
и установите цвет с помощью setPixel
, но кажется, что независимо от того, как я изменяю альфа-значение, оно остается равным 255, и прозрачность изображения никогда не изменится.
Вот мой код:
QImage texPic(width, height, QImage::Format_RGBA8888);
texPic.setPixel(0, 0, qRgba(255,0,0,0));
texPic.setPixel(0, 1, qRgba(0,255,0,100));
QOpenGLTexture *texture = new QOpenGLTexture(texPic);
Какие-либо предложения?
Я нашел проблему, дело не в настройке самой текстуры.
Это потому, что я не правильно установил функции gl.
я добавил
glBlendFunc(GL_SRC_ALPHA,GL_ONE_MINUS_SRC_ALPHA);
glEnable(GL_BLEND);
И теперь это сработало.
Других решений пока нет …