1
0
Fork 0
mirror of https://github.com/OpenMW/openmw.git synced 2025-03-03 21:39:41 +00:00

Enable light sources directly to avoid virtual calls

This commit is contained in:
Andrei Kortunov 2019-03-21 10:27:50 +04:00
parent 7ccfec4d21
commit b466bfee40

View file

@ -245,7 +245,8 @@ namespace SceneUtil
osg::ref_ptr<LightStateAttribute> attr = new LightStateAttribute(mStartLight, lights); osg::ref_ptr<LightStateAttribute> attr = new LightStateAttribute(mStartLight, lights);
// don't use setAttributeAndModes, that does not support light indices! // don't use setAttributeAndModes, that does not support light indices!
stateset->setAttribute(attr, osg::StateAttribute::ON); 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 // need to push some dummy attributes to ensure proper state tracking
// lights need to reset to their default when the StateSet is popped // lights need to reset to their default when the StateSet is popped