[Interest] QML: Flage QSGNode::DirtyGeometry and recreation of batches

Gunnar Sletta gunnar at sletta.org
Thu Jun 11 08:34:37 CEST 2015


> On 10 Jun 2015, at 16:42, Sean Harmer <sean.harmer at kdab.com> wrote:
> 
> On Wednesday 10 Jun 2015 16:09:54 kim kulling wrote:
>> Hello ML,
>> 
>> I am working on a QSGGeometryNode, which geo needs to get updated every
>> frame ( visualization of data ). At the moment I am changing the vertices
>> via the QSGNode::update-method and mark it as QSGNode::DirtyGeometry. I
>> have several 100 vertices which are unchanged, only a couple of vertices
>> will get changed.
>> 
>> Is this ther most perfromant way to do this? I am not sure if the
>> scenegraph needs to update the whole batching each frame? Special on an
>> embedded device I can observe that my performance is pretty bad ( 16 FPS ).
> 
> Is the buffering of data the bottle neck?

How many batches do you end up with and how large are they? QSG_RENDERER_DEBUG=render will tell you. Updating a couple of hundreds of vertices is a nobrainer, even on embedded chips, so I’m suspecting the performance problem is only indirectly related. 

> Which is the recommended way to do this? Anny recommendations?
> 
> Iirc OpenGL ES 2 doesn't have glMapBuffer() or glMapBufferRange() so it's not 
> possible to update subsets of a buffer with unextended ES 2.

There is also no api in QSGGeometry to mark that portions of the buffer has changed, so that is the way to go.

> 
> Cheers,
> 
> Sean
> -- 
> Dr Sean Harmer | sean.harmer at kdab.com | Managing Director UK
> KDAB (UK) Ltd, a KDAB Group company
> Tel. +44 (0)1625 809908; Sweden (HQ) +46-563-540090
> Mobile: +44 (0)7545 140604
> KDAB - Qt Experts
> _______________________________________________
> Interest mailing list
> Interest at qt-project.org
> http://lists.qt-project.org/mailman/listinfo/interest




More information about the Interest mailing list