[osg-users] Huge perfomance issues

2019-05-31 Thread Achilleas Margaritis
Hi, I am developing a data visualization application with Qt + OSG, but I have huge performance problems. These problems are not due to OSG itself but rather due to how I use OSG (I just started using OSG/OpenGL for the first time). The application accepts a lot of data as messages over the ne

Re: [osg-users] Huge perfomance issues

2019-05-31 Thread Werner Modenbach
Hi Achilleas, your explanations look to me like "I want to repaint my living room. So I destroy my house and ..." My suggestion: For each kind of geometry create it as geode and add it to a switch node. So you can switch them on and off as needed. For alterations keep pointers to the geodes and

Re: [osg-users] Huge perfomance issues

2019-05-31 Thread Achilleas Margaritis
The problem is I need to destroy my house every frame. There is no standard number of objects received; any object, with any configuration, can be received at any time. My only choice is to destroy everything and repaint everything. -- Read this topic online here: http://forum.

Re: [osg-users] Huge perfomance issues

2019-05-31 Thread Alberto Luaces
"Achilleas Margaritis" writes: > The problem is I need to destroy my house every frame. > > There is no standard number of objects received; any object, with any > configuration, can be received at any time. > > My only choice is to destroy everything and repaint everything. You can also modify

Re: [osg-users] Huge perfomance issues

2019-05-31 Thread Werner Modenbach
There should be a better approach. Just a quick idea: For each kind of object keep an array of pointers to already created geodes. If you don't need a certain geode switch it off in the osg::Switch. If you get a request for a new one, check the switch for inactive geodes. If found, just alter it

Re: [osg-users] Huge perfomance issues

2019-05-31 Thread Achilleas Margaritis
So, in other words, keep objects preallocated and switch on only the necessary ones? And if there is no current object that matches the existing ones, then and only then create a new one? Not a bad idea, in fact. Thanks a lot for the reply. -- Read this topic online here: http

Re: [osg-users] Huge perfomance issues

2019-05-31 Thread Yu Qi
Hi, By the way,the default vertex specification of geometry is displaylist,if you need to change vertex frequently,use VAO and VBO. Thank you! Cheers, Yu -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=76167#76167

Re: [osg-users] Huge perfomance issues

2019-06-02 Thread Chris Hanson
I think I'd create a single object to represent ALL of the objects of a given class, eg Lines, PolygonLines, Rectangles, etc. Set this up to use buffer objects and it will refer to the buffer object to fetch the vertices, indices, and possibly attributes for the appearance. Then on each frame afte

Re: [osg-users] Huge perfomance issues

2019-06-03 Thread Achilleas Margaritis
Can you please elaborate? what do you mean by 'single object' and 'set this up to use buffer objects'? Do you mean that a single OSG object can hold multiple VBOs or arrays of vertices? Or do you mean to have a single vertex buffer and multiple OSG objects each one using part of that buffer?

Re: [osg-users] Huge perfomance issues

2019-06-03 Thread Chris Hanson
Well, I hadn't thought it through, but I think you could use a single VBO to hold, for example, all of the data for the Lines type objects. And another VBO to hold all the data for the Polylines, etc. So, one Object and one VBO to hold all the data for all the entities of each TYPE of Object. Then,