Jean-Sébastien Guay wrote :
> Hello,
>
> For now, we are creating some geometry (quad strips, specifically) to 
> display the cables, and assigning texture coordinates to that geometry, 
> on the fly. 
>   
(...)
> I know the cable display needs to be optimized because if I just set the 
> cables' nodemasks to 0, the draw times go from 6.6ms to 2.2ms (for the 
> same view). And there are not *that* many cables... There's a lot of 
> other geometry in the scene which is still drawn in the 2.2ms time...
>
> So I would appreciate some pointers. I would have assumed quad strips 
> are pretty fast, so perhaps something else is the problem?
>
> There's the fact that the geometry is dynamic, which could mean that OSG 
> is trying to recreate display lists each frame, but I tried 
> setUseDisplayList(false) on the geometry and the cables just did not 
> display anymore... Is there something else I need to do in that case?
>   
I have a somewhat similar situation myself. I use capsules to display 
hoses,
which aren't textured but just have a color, and use display lists.
Capsules are just cylinders and half spheres, but these are made of a 
lot of vertices.
I ran at something like 1-2 fps(!) when I was redrawing the whole hose 
everytime the hose changed.
When no geometry changed, I shot back to around 25 fps.
I got three times faster when I limited myself to changing only the end 
of the hose, thus keeping the same capsules rather than replacing them 
with new ones with the same coordinates, color, etc.
I then got another factor 3 by making sure I drew as few capsules as I 
needed.
In my case too, the capsules are not that many, I have tens of animated 
characters moving around, plus a scene to render, but the dynamic shapes 
ate way more than anything else.
I'm not sure if this helps a lot, but I just did this today, and 
optimizing the geometry was clearly a big win for me.
If your app doesn't change all the cables at once, only one part of one 
cable at a time (a given frame), keeping the geometry should give you a 
decent boost.

If anyone else has other suggestions, I'm interested to hear them too.

Sincerely,
Laurent Di Cesare.
_______________________________________________
osg-users mailing list
osg-users@lists.openscenegraph.org
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

Reply via email to