Hi Robert,<br><br>I was looking through CullVisitor and trying to get my head around the difference between the eye point and the viewpoint.  Is the viewpoint stack is used to deal with internal camera nodes then?  Then the "eye" point is the main camera's position while the "view" point would be used for currently executing camera node.  If you don't have any internal camera nodes, then would the eye point and the viewpoint be equivalent?<br>
<br>Do you think it would make sense to just copy the implemention from CullVisitor for the viewpoint/eyepoint stack into IntersectionVisitor?<br><br>Thanks!<br><br>Jason<br><br><div class="gmail_quote">2009/3/19 Robert Osfield <span dir="ltr"><<a href="mailto:robert.osfield@gmail.com">robert.osfield@gmail.com</a>></span><br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">Hi Jason,<br><br>This change would be appropriate.  Although we might want to review the eye point management, and perhaps eye + view points as potentially they aren't the same.  An stack for eye/viewpoint point might be need as well to cope with internal camera nodes.<br>

<br>Robert.<br><br><div class="gmail_quote">2009/3/18 Jason Beverage <span dir="ltr"><<a href="mailto:jasonbeverage@gmail.com" target="_blank">jasonbeverage@gmail.com</a>></span><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div><div></div><div class="h5">
Hi Robert,<br><br>I'm using LOD's in one of my apps to control the distance at which models first begin to appear and noticed that the IntersectionVisitor will still hit these nodes even if they are not visible.<br>


<br>I tried setting the LODSelectionMode to USE_EYE_POINT_FOR_LOD_LEVEL_SELECTION but it still selected invisible nodes.  After looking through the code I noticed that the getDistanceToViewPoint function is used by the LOD class but is not implemented by the IntersectionVisitor, so will always have the value of 0.<br>


<br>I made a small class deriving from IntersectionVisitor that just returned getDistanceToEyePoint (which is overriden by IntersectionVisitor) and things seemed to behave more appropriately.<br><br>class MyIntersectionVisitor : public osgUtil::IntersectionVisitor<br>


{<br>public:<br>    MyIntersectionVisitor(osgUtil::Intersector* intersector=0, osgUtil::IntersectionVisitor::ReadCallback* readCallback=0)<br>        :IntersectionVisitor(intersector, readCallback)<br>    {<br>    }<br><br>


    virtual float getDistanceToViewPoint(const osg::Vec3& pos, bool useLODScale) const<br>    {<br>       return getDistanceToEyePoint(pos, useLODScale);<br>    }<br>};<br><br>Would this change, or something similar, be appropriate for inclusions in OSG?<br>


<br>Thanks!<br><font color="#888888"><br>Jason<br><br>
</font><br></div></div>_______________________________________________<br>
osg-users mailing list<br>
<a href="mailto:osg-users@lists.openscenegraph.org" target="_blank">osg-users@lists.openscenegraph.org</a><br>
<a href="http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org" target="_blank">http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org</a><br>
<br></blockquote></div><br>
<br>_______________________________________________<br>
osg-users mailing list<br>
<a href="mailto:osg-users@lists.openscenegraph.org">osg-users@lists.openscenegraph.org</a><br>
<a href="http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org" target="_blank">http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org</a><br>
<br></blockquote></div><br>