Enable light sources directly to avoid virtual calls

pull/541/head
Andrei Kortunov 6 years ago
parent 7ccfec4d21
commit b466bfee40

@ -245,7 +245,8 @@ namespace SceneUtil
osg::ref_ptr<LightStateAttribute> attr = new LightStateAttribute(mStartLight, lights);
// don't use setAttributeAndModes, that does not support light indices!
stateset->setAttribute(attr, osg::StateAttribute::ON);
stateset->setAssociatedModes(attr, osg::StateAttribute::ON);
for (unsigned int i=0; i<lightList.size(); ++i)
stateset->setMode(GL_LIGHT0 + mStartLight + i, osg::StateAttribute::ON);
// need to push some dummy attributes to ensure proper state tracking
// lights need to reset to their default when the StateSet is popped

Loading…
Cancel
Save