Hi All,
I have a very weird issue that seems related to a problem in the driver of my
graphic board (nVidia Quadro M3000 on a Dell Precision M6600, Win7 Professional
SP1).
I tried to update to newest one, but the issue is still there. I hope anyone of
you has some idea about the possible cause of the issue, and how to fix it.
What I have is a scene graph whose geometry nodes are made by multiple
instances of the same drawable in different positions in the model.
That is to say:
__ transform1 __ geode 1__ DerDrawable 1
/
Root ___ transform2__ geode 2 __ DerDrawable 2
\___...
\___ transform3__ geode 3__ DerDrawable 3
Basically I have derived my own DerDrawable from osg::drawable, and implemented
a drawImplementation that simple defines some easy geometry (<100 vertices) by
using vertex arrays.
Then I set different state sets for geodes (basically material properties). All
geodes, but one, have the same material properties (i.e. the same color).
Let's suppose all geodes are drawn in red, but one in yellow.
What happens is that all drawables are draw in red :(
Anyway, if I exclude all of them, but the yellow one, from drawing (for example
by zooming into the one that should be showed in yellow) it actually appears
yellow.
As soon I zoomed out, everything appears red.
If, anyway, I add a
glFinish();
as the last statement in my drawImplementation, the issue suddenly disappears.
I mean, all drawables drawn in red, and one in yellow.
It looks like the material properties are not updated properly before drawing
the last object (I know that OSG orders drawables by state sets, in order to
minimize changes in OpenGL states,
so I guess that the yellow drawable is drawn at the end, but my suspicious is
that the geometry is rendered before the material properties are set to yellow).
Unfortunately adding glFinish() slows down my application noticeable (I tried
with glFlush(), but this does not solve the problem).
Any idea?
Thanks,
Gianluca Natale
_______________________________________________
osg-users mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org