[osg-users] Polytope from view frustum

Robert Osfield robert.osfield at gmail.com
Wed Nov 2 01:43:50 PDT 2016


On 1 November 2016 at 21:45, Trajce Nikolov NICK
<trajce.nikolov.nick at gmail.com> wrote:
> Hi Community,
>
> anyone knowing how to achieve this and with will to share?
>
> Thanks a bunch as always !!

Have a look at the API's...

First one to look at is osg::Polytope, create one of these with a unit
frustum.  This will be in clip space.

Next step transform this Polytope by the projection matrix using the
transformProvidingInverse() method (to transform a plane you multiple
it by the inverse of that matrix), so in our case the projection
matrix transform from eye space into clip space which is the inverse
of the transform we intend, but thanks to the way that planes are
transformed we can just use the projection matrix directly as long as
we use the transformProvidingInverse().  See the src/osg/CullStack.cpp
to see this in action.

Then transform into object coordinates using the same method by
providing the view and model matrices.

Robert.



More information about the osg-users mailing list