Re: [osg-users] Multiple Cameras and lagging proj matrix

2012-12-28 Thread Mathias Fröhlich
Hi, On Thursday, December 27, 2012 11:43:00 Paul Martz wrote: Ah ha. And each Camera has it's own StateSet. I see. My situation is a bit different, as I have a single subordinate Camera buried in the scene graph, and it is on that Node that I want to set a projection matrix Uniform that

Re: [osg-users] Multiple Cameras and lagging proj matrix

2012-12-28 Thread Paul Martz
I did come up with a reasonably confined solution for this, and I've added it to the osgWorks project, see: https://code.google.com/p/osgworks/source/browse/trunk/src/osgwTools/MultiCameraProjectionMatrix.cpp and the associated header in include/osgwTools/MultiCameraProjectionMatrix.h.

Re: [osg-users] Multiple Cameras and lagging proj matrix

2012-12-27 Thread Paul Martz
Ah ha. And each Camera has it's own StateSet. I see. My situation is a bit different, as I have a single subordinate Camera buried in the scene graph, and it is on that Node that I want to set a projection matrix Uniform that has a different value per render thread. I could, in theory, add

Re: [osg-users] Multiple Cameras and lagging proj matrix

2012-12-26 Thread Glenn Waldron
On Wed, Dec 26, 2012 at 1:08 PM, Paul Martz pma...@skew-matrix.com wrote: Hi Glenn -- I've managed to compute the matrix I need using the clamp projection callbacks, so thanks for directing my attention there. But I've ran into problems with multithreading, and it seems like you should have

Re: [osg-users] Multiple Cameras and lagging proj matrix

2012-12-15 Thread Paul Martz
Thanks, Glenn -- I saw the callback for clamping the projection matrix while I was sifting through the code, and your osgEarth example code is very enlightening. Your function cullOverlayGroup(), is that a cull callback? Let me regurgitate what it does, so you can correct me if I'm

Re: [osg-users] Multiple Cameras and lagging proj matrix

2012-12-15 Thread Glenn Waldron
Yes, you got it. cullOvelayGroup() is called during the cull traversal from an overloaded traverse() method in OverlayDecorator (which subclasses Group). Glenn Waldron / @glennwaldron On Sat, Dec 15, 2012 at 1:54 PM, Paul Martz pma...@skew-matrix.com wrote: Thanks, Glenn -- I saw the

Re: [osg-users] Multiple Cameras and lagging proj matrix

2012-12-14 Thread Paul Martz
I think I have a pretty good idea of the cause. The CullVisitor gathers near far info during traversal but doesn't actually compute the final projection matrix until after the traversal completes. This means, obviously, that the projection matrix for the current frame hasn't been computed at

Re: [osg-users] Multiple Cameras and lagging proj matrix

2012-12-14 Thread Glenn Waldron
Paul, I had a similar problem (I think). I installed a custom callback on the RTT camera (CullSettings::setClampProjectionMatrixCallback). This callback would call the original implementation first, then store the results of the projection matrix clamp so that I could use it immediately. You can