What I would do in standard OpenGL is this: 1) Draw your whole model first (with depth test enabled); 2) Clean the depth buffer only (glClear(GL_DEPTH_BUFFER_BIT);); 3) Draw the dragger (with depth test enabled). In this way the dragger would always appear on top of the model, no matter its position in the world.
How can you achieve this in a scene graph using OSG? 1) I would set the rendering bin for the whole model to the lowest value, to force it to be drawn first. Keeping depth test enabled during drawing. 2) I would define a CleanDrawable, derived from osg::drawable, whose drawImplementation is just a glClear(GL_DEPTH_BUFFER_BIT). And assign the rendering bin for such drawable to a value greater than the one assign to the whole model. Then, I would attach a geode containing such drawable somewhere in your scenegraph. 3) I would set for the dragger a rendering bin even greater than that assigned to the CleanDrawable. Keeping the depth test enabled in this case also. I did do it in my application and it seems to work. But I don't know if there is a better and more elegant solution. Just my 2 cents. -----Messaggio originale----- Da: [email protected] [mailto:[email protected]] Per conto di Bob Slobodan Inviato: lunedì 11 giugno 2012 10:15 A: [email protected] Oggetto: Re: [osg-users] Depth test and RenderBin details Hi guys, First of all, thank you for the answers. Unfortunately, I couldn't solve my problem. I already tried the first solution that consisted in giving different render bin to the axis and the sphere, but then I either have the sphere always on top of the axis, or the axis always on top of the sphere. This image illustrates my problem : [Image: http://img15.hostingpics.net/pics/490598Sanstitre4.png ] (http://www.hostingpics.net/viewer.php?id=490598Sanstitre4.png) The image 1 illustrates what i have when the sphere has a lower render bin than the axis. The images 2 and 3 illustrates the opposite. The image 4 illustrates a shading problem that I have in both situation. So what I want is a mix between the image 2 and 5. This is basically what I have when I don't deactivate the depth test and don't use render bin details. But then, if I have anything (like a plane for example) between my dragger and the camera, I won't see it anymore. Thank you so much for helping me. Cheers, Bob ------------------ Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=48156#48156 _______________________________________________ osg-users mailing list [email protected] http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org _______________________________________________ osg-users mailing list [email protected] http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

