Hi Claudio, it depends how your Geometry is setup. You might need to call osg::Geometry->dirtyDisplayList() or if you use VertexBufferObjects you might need to call colorArrays->getBufferObject()->dirty()
On Mon, Oct 14, 2019 at 11:16 PM Claudio Benghi <claudio.ben...@gmail.com> wrote: > Hello All, > > I have implemented a colour change visitor along the lines of the class > found at: > http://www.vis-sim.com/osg/code/osgcode_color1.htm > > While debugging I note that the following code is executed, including the > colorArrays->dirty(), but the colour in the render is not affected. > > Could it depend from the way in which the colorArray is initialliy > instantiated? > Should I mark some state as Dynamic? > > > Code: > > void XbimNodeColorVisitor::apply(osg::Geometry &curGeom) > { > osg::Vec4Array *colorArrays = dynamic_cast<osg::Vec4Array > *>(curGeom.getColorArray()); > if (colorArrays) { > for (unsigned int i = 0; i < colorArrays->size(); i++) { > osg::Vec4 *color = &colorArrays->operator [](i); > color->set(m_color._v[0], m_color._v[1], m_color._v[2], > m_color._v[3]); > } > colorArrays->dirty(); > } > else { > // code never enters this path > } > } > > > > > > Thank you! > > Cheers, > Claudio > > ------------------ > Read this topic online here: > http://forum.openscenegraph.org/viewtopic.php?p=76829#76829 > > > > > > _______________________________________________ > osg-users mailing list > osg-users@lists.openscenegraph.org > http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org > -- trajce nikolov nick
_______________________________________________ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org