diff --git a/src/osgShadow/StandardShadowMap.cpp b/src/osgShadow/StandardShadowMap.cpp index a5aaa7522..fe1f34307 100644 --- a/src/osgShadow/StandardShadowMap.cpp +++ b/src/osgShadow/StandardShadowMap.cpp @@ -677,7 +677,7 @@ void StandardShadowMap::ViewData::aimShadowCastingCamera( if( light->getSpotCutoff() < 180.0f) // spotlight, no need for bounding box { - osg::Vec3 position(lightPos.x(), lightPos.y(), lightPos.z()); + osg::Vec3d position(lightPos.x(), lightPos.y(), lightPos.z()); float spotAngle = light->getSpotCutoff(); projection.makePerspective( spotAngle, 1.0, 0.1, 1000.0); @@ -687,14 +687,15 @@ void StandardShadowMap::ViewData::aimShadowCastingCamera( { if (lightPos[3]!=0.0) // point light { - osg::Vec3 position(lightPos.x(), lightPos.y(), lightPos.z()); + osg::Vec3d position(lightPos.x(), lightPos.y(), lightPos.z()); float centerDistance = (position-bs.center()).length(); float znear = centerDistance-bs.radius(); float zfar = centerDistance+bs.radius(); float zNearRatio = 0.001f; - if (znear