From b2fd8f4059060818db720cf412c555e4d3088f79 Mon Sep 17 00:00:00 2001 From: Robert Osfield Date: Wed, 7 Sep 2011 16:26:57 +0000 Subject: [PATCH] Added handling of the case when RenderLeaf::_modelview matrix is NULL, such as when LightPointNode is used in the scene graph. --- src/osgShadow/ViewDependentShadowMap.cpp | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/osgShadow/ViewDependentShadowMap.cpp b/src/osgShadow/ViewDependentShadowMap.cpp index 201a26c34..5ce83e9c8 100644 --- a/src/osgShadow/ViewDependentShadowMap.cpp +++ b/src/osgShadow/ViewDependentShadowMap.cpp @@ -1408,7 +1408,16 @@ struct RenderLeafBounds if (renderLeaf->_modelview.get()!=previous_modelview) { previous_modelview = renderLeaf->_modelview.get(); - light_mvp.mult(*renderLeaf->_modelview, light_vp); + if (previous_modelview) + { + light_mvp.mult(*renderLeaf->_modelview, light_vp); + } + else + { + // no modelview matrix (such as when LightPointNode is in the scene graph) so assume + // that modelview matrix is indentity. + light_mvp = light_vp; + } OSG_INFO<<"Computing new light_mvp "<