[osg-users] Detecting if a node is within viewfrustum

Robert Osfield robert.osfield at gmail.com
Sun Aug 28 03:14:30 PDT 2016

HI Suraji,

How you want to go about this will depend upon how you are managing
the scene graph.  Are there just specific nodes that you want to track
or all nodes in the scene graph?

I wouldn't recommend using cull callbacks as this can only tell you
whether a node has been culled or not for the current cull traversal,
it doesn't allow you to detect where it is relative to the view
frustum and doesn't allow you to modify the cull traversal.

My expectation is that you'll need to have a custom traversal of the
scene graph that uses a Polytope to represent the view frustum and
have this detect what nodes might be crossing the sides of the
Polytope, then adjust the Cameara's view matrix accordingly.  The
osgUtil::PolytopeIntersector might be relevant but more as a guide
than for direct use as it only tells you what's inside the Polytope
not what might be crossing one of it's planes.


On 26 August 2016 at 10:06, Suraj Paul <suraj at isac.gov.in> wrote:
> Hi evrybody,
> I am new to Openscene graph and need a help/guidance.
> I wish to [b]find which of the sides of view frustum[/b]- left, right, top, bottom near or far- a moving node is crossing. How to find this in Openscene graph?
> I need it so that, i can translate the camera in the approriate direction (by some amount) to contain the moving node within the camera frustum volume...
> Any help would help me...
> ...
> Thank you!
> Cheers,
> Suraj
> ------------------
> Read this topic online here:
> http://forum.openscenegraph.org/viewtopic.php?p=68450#68450
> _______________________________________________
> osg-users mailing list
> osg-users at lists.openscenegraph.org
> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

More information about the osg-users mailing list