<div dir="ltr">hi,<br>i have created a shadowed scene in this mode:<br><br>...<br>osg::ref_ptr<osgShadow::ShadowedScene> shadowedScene = new osgShadow::ShadowedScene;<br><br>shadowedScene->setReceivesShadowTraversalMask(ReceivesShadowTraversalMask);<br>
shadowedScene->setCastsShadowTraversalMask(CastsShadowTraversalMask);   <br><br>osg::ref_ptr<osgShadow::ShadowMap> sm = new osgShadow::ShadowMap;<br>sm->init();<br>sm->clearShaderList();<br>sm->cleanSceneGraph();<br>
sm->setAmbientBias(osg::Vec2(0.8,0.8)); //default 0.5<br>//sm->setTextureSize(osg::Vec2s(1024,1024));<br><br><br>shadowedScene->setShadowTechnique(sm.get());<br><br>osg::ref_ptr<osg::Group> autoepista=new osg::Group();<br>
autoepista->addChild(auto_cla.get());// car<br>autoepista->addChild(contorno.get());// bridge over the track<br><br><br>// setto le maschere di shadow attualmente se spengo l'ombra della pista funziona quella della macchina e viceversa<br>
auto_cla->setNodeMask(auto_cla->getNodeMask() & CastsShadowTraversalMask);// set on cast for car<br>track->setNodeMask(ptratto[0]->getNodeMask() & ~CastsShadowTraversalMask);// set off cast for track<br>
contorno->setNodeMask(contorno->getNodeMask() & CastsShadowTraversalMask);// set on cast for bridge<br><br>shadowedScene->addChild(autoepista.get());<br>shadowedScene->addChild(track.get());<br><br>shadowedScene->addChild(lightgroup); <br>
<br>root->addChild(shadowedScene.get());<br>...<br><br>i have scena_cla node that non cast shadow, receive only and auto_cla and contorno nodes that cast shadow,now:<br>if i set castshadow for both auto_cla and contorno the shadow of contorno is correct but the shadow of auto_cla appear wrong and poor<br>
if i set ~castshadow for contorno and castshadow for auto_cla the shadow of auto_cla is correct but contorno dont project shadow..<br>i dont understand why i dont work correctly...<br>can anyone help me?<br><br>ps i have tested other shadow tecnique but don't work<br>
<br><br><br><br></div>