Hi Wojtek, thanks for the fast reply. I am going to investigate this but there is no source code (black box) so it is hard to say. I took very naive approach for the moment since I am not familiar with the code of the MinimalShadowMap that much and will try to force the conditions in the snippet as the non standard matrix is valid projection matrix and see the results. But will wait for you when you get back from vacation and will ping you again if you can give more hints. Enjoy the vacation!!!!
Thanks as always! Nick On Wed, Aug 6, 2014 at 11:59 AM, Wojciech Lewandowski < [email protected]> wrote: > Hi, Trajce, > > I am on vacations. Quick answer is impossible in my opinion. I would bet > that projection software uses some matrix tricks and it would be hard to > figure it out without seeing the code and solution. There is a chance > though, that matrix obtained there is not a right projection matrix used to > render particular channels. As far as I know such solutions, there are a > channel passes which render each channel to offscreen texture/pixelbuffer > and final pass which projects those on sphere or other irregular surface > and then blasts this to screen and projector optics does the rest. So it > may be a chance that projection matrix obtained is for final pass and if > you obtain channel matrices they may turn out to be regular. This of course > brings question why the code obtained wrong perspective matrix instead of > right one ? And here I have no answer too, it has to be traced and debugged > with original code. > > Cheers, > Wojciech Lewandowski > > > 2014-08-06 0:44 GMT+02:00 Trajce Nikolov NICK < > [email protected]>: > >> Hi Community, >> >> My client have a setup with image distortion over a dome, multiple >> channels, and along with the projectors there is an API coming that is well >> integrated in OSG - it modifies the projection matrix somehow. And we are >> facing issues with shadows, in the following snippet: >> >> void MinimalShadowMap::ViewData::clampProjection >> ( osg::Matrixd & projection, float new_near, float >> new_far ) >> { >> double r, l, t, b, n, f; >> bool perspective = projection.getFrustum( l, r, b, t, n, f ); >> if( !perspective && !projection.getOrtho( l, r, b, t, n, f ) ) >> { >> // What to do here ? >> OSG_WARN << "MinimalShadowMap::clampProjectionFarPlane failed - >> non standard matrix" << std::endl; >> >> } else ....... >> >> You can see the comment // What to do here ?. >> >> Well, what is to be done there since the distorted matrix coming from the >> API seam to be recognized by non standard matrix? Someone have a clue? >> >> Thanks as always ! >> >> Nick >> >> -- >> trajce nikolov nick >> >> _______________________________________________ >> osg-users mailing list >> [email protected] >> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org >> >> > > _______________________________________________ > osg-users mailing list > [email protected] > http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org > > -- trajce nikolov nick
_______________________________________________ osg-users mailing list [email protected] http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

