Hi,

I discovered that it does not behave always like that. It happens only when painting very quickly many small QImages with transparent areas.

And I found a way to fix it, but this is just adding mystery.

Instead of

pnt->drawImage(etc);

I do

pnt.beginNativePainting();
pnt.endNativePainting();
pnt->drawImage(etc);

This seems to force a kind of flush and all is fine after that.

Should I report a bug?

Thanks

Philippe

Le 01-05-2022 13:45, maitai a écrit :

Hi,

I have some heavy rendering that I would like to speed up using openGL. For the time being using only QPainter regular method but later some native openGL code.

So instead of painting on a QImage, I am painting on a QOpenGLPaintDevice. All is fine except one point: When the painter draws a QImage containing alpha, these alpha pixels appear black. CompositionMode is QPainter::CompositionMode_SourceOver and QImage format for the source is QImage::Format_ARGB32_Premultiplied. Same code painting in a QImage works fine.

I have tried to glEnable(GL_BLEND) and glEnable(GL_DEPTH_TEST) and some others but that didn't fix the issue.

Any idea of what needs to be done ?

Many thanks in advance

Philippe Lelong
_______________________________________________
Interest mailing list
Interest@qt-project.org
https://lists.qt-project.org/listinfo/interest
_______________________________________________
Interest mailing list
Interest@qt-project.org
https://lists.qt-project.org/listinfo/interest

Reply via email to