Re, Some correction :
But nothing changed... I apply it on a PAT, and on a geode ... but the node > it still culled by the other one... I use HUDs in the scene, but the scene > graph is not attached to them... so I don't think it can explain that. > Correction : Sorry I was wrong, it works on a geode, but not on a PAT. But, an other problem appear. Disabling culling, my Geode looks like bad now... that seem logical... no culling, so all faces are rendered... It's a normal problem, but is there any solution ? It looks like an all-or-nothing solution... :'( Thanks, Vincent. > Is there some properties to check on the View ? compositeViewer ? camera ? > > Can I apply that on every king of node ? is there a mean to force children > inherit the state ? is it necessary ? > > Thanks for you help. > > Regards, > Vincent. > > 2009/1/9 Serge Lages <serge.la...@gmail.com> > >> Hi Vincent, >> >> I'll try to answer to your questions... >> >> On Fri, Jan 9, 2009 at 9:55 AM, Vincent Bourdier < >> vincent.bourd...@gmail.com> wrote: >> >>> Hi, >>> >>> I need some explanations about the ways OSG allow to modify the render. >>> >>> I am working on a function, to apply to a node, to set it always rendered >>> over the other nodes. In other words, If I apply this on an osgText, I would >>> be able to read the text whatever my camera position can be (of course if >>> text is in the frustum). >>> >>> I make some search and I found a lot of things: >>> >>> * node->setCullingActive() : disable/enable the culling on a node. I am >>> I good, disabling this on a node is not sufficient, after that we need to >>> tell the node when to be rendered, isn't it ? >>> >> >> You don't necessarily need to disable the culling to be sure to see your >> node. The culling is applied depending on the view frustum or the distance >> (small feature culling). And you're right, it's not sufficient to disable >> it. >> >> >>> >>> * state->setMode(GL_DEPTH_TEST, OFF) : same thing ? what is the >>> difference with the first one ? just OSG/OpenGl distinction ? >>> >> >> This one disable depth tests with the other nodes, which means that when >> you'll render your node, OpenGL will not check if your object is behind >> another one, it will render your node on top of everything rendered so far. >> >> It's a first step to be sure to see your node, so don't forget to set the >> GL_DEPTH_TEST to off. >> >> >>> >>> * state->setRenderbinDetails(binNum, binName) : num < 0 will be first >>> rendered, num >0 will be the last ? what is the binName ? I saw >>> "LastRenderBin" or "RenderBin" ... is there some keyword or it is just a >>> name ? what is this word function ? >>> >> >> RenderBins allows you to control the rendering order of your node, I must >> admit that it's a complex topic I don't still fully understand. But what you >> need to know is that if you set something like that : >> >> state->setRenderbinDetails(INT_MAX, "RenderBin") ; >> >> You'll be pretty sure to have your object rendered last. In combination >> with the GL_DEPTH_TEST, you've got your reciepe to get an object always >> rendered. >> >> But be aware to not have an other osg::Camera rendering after the one >> where your object is attached. In this case, be sure that you render your >> object with the last osg::Camera rendered in your scene. >> >> Hope this helps ! >> >> -- >> Serge Lages >> http://www.tharsis-software.com >> >> _______________________________________________ >> osg-users mailing list >> osg-users@lists.openscenegraph.org >> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org >> >> >
_______________________________________________ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org