[Development] QT_XCB_NATIVE_PAINTING makes worse that without of it

Uwe Rathmann Uwe.Rathmann at tigertal.de
Sun Mar 24 13:35:46 CET 2019


On 3/24/19 1:13 PM, Allan Sandfeld Jensen wrote:

> Because imperative in the case of QPainter means immediate. The 
> result is expected to have been committed to the paint device when 
> the call returns.

In case of the X11 paint engine this means that the points have been
sent to the X server - not that any rendering has been done.

 From the application point of view this is not that different to
putting the points to a scene graph node, beside that some interprocess
communication is involved. You put your points somewhere and continue
with whatever needs to be done.

Guess the scenegraph solution will need more memory, but this is a
different story.

> The creates extra overhead, due to a lot of small OpenGL calls 
> constantly changes states and issuing short non-batched draw calls.

Here we are talking about a single QPainter::drawPolyline. I bet it
finally ends up at exactly the same call regardless if you use
QPainter or the scenegraph.

While a lot of what you are saying is true in general it is not helpful
to constantly ignore the specific use case of Denis.

Uwe



More information about the Development mailing list