From be179b481db1ec757376e81962971b5019044141 Mon Sep 17 00:00:00 2001 From: Robert Osfield Date: Thu, 29 Jan 2009 09:28:08 +0000 Subject: [PATCH] Improved the handling of toggling of GL_LIGHTi modes when SceneView::setLightingMode() is toggled on/off. --- src/osgUtil/SceneView.cpp | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/osgUtil/SceneView.cpp b/src/osgUtil/SceneView.cpp index 1611d4ebd..6c8cfd8d7 100644 --- a/src/osgUtil/SceneView.cpp +++ b/src/osgUtil/SceneView.cpp @@ -651,6 +651,12 @@ void SceneView::setLightingMode(LightingMode mode) { // remove GL_LIGHTING mode _globalStateSet->removeMode(GL_LIGHTING); + + if (_light.valid()) + { + _globalStateSet->removeAssociatedModes(_light.get()); + } + } _lightingMode = mode; @@ -659,6 +665,10 @@ void SceneView::setLightingMode(LightingMode mode) { // add GL_LIGHTING mode _globalStateSet->setMode(GL_LIGHTING, osg::StateAttribute::ON); + if (_light.valid()) + { + _globalStateSet->setAssociatedModes(_light.get(), osg::StateAttribute::ON); + } } }