Hi Fred, By far the easiest way to do what you want is to use a post draw callback on the RTT Camera, or a pre draw callback on the master callback, and have this draw callback do your custom OpenGL code calls.
Robert. On Mon, Oct 19, 2009 at 9:19 PM, Frederic Marmond <[email protected]> wrote: > Thanks Robert, > > Rendering to texture is ok, it works fine. > What I need is to completely split the rendering (pre and others) in 2 > very own calls (or find a way to do the same) > To explain the context / my need, here is a little documented 'code' : > > > myOwn3DEngine* aCustom3DEngine; > osgViewer* myViewer; > > //init the osg world, add a osg shadowedScene (with > osgShadow::ShadowMap technique) > [...] > > //init my own world (aside osg one) > [...] > > > //in the application loop: > > // do all osg render to textures (including shadow map generating) > myViewer->prerenderingTraversals(); // <---- I miss this one :) > > // play with generated textures (like adding shadow of non osg objects > in shadow maps) > myOwn3DEngine->updateOsgShadowMaps(); > > // draw my custom 3d engine, with shared shadow map (shadow maps will > include osg shadows) > myOwn3DEngine->render(); > > //draw the OSG scene with updated textures (excluding prerendering > stages, as they are done few lines above) > myViewer->renderingTraversals(); > > > => is there any method to do something like that ? > if I call twice the current renderingTraversals(), textures (including > shadow maps) will be overwritten at each ? > node switch in the graph to enable/disable the rtt camera ? (seems ugly to me) > > > > Fred > > > > > On Mon, Oct 19, 2009 at 9:43 PM, Robert Osfield > <[email protected]> wrote: >> Hi Frederic, >> >> Are you familiar with the osgViewer/osg::Camera RTT capabilities? >> They are very flexible now, you can render subgraphs under an scene >> graph RTT osg::Camera as a pre rendering stage then switch it off for >> subsequent frames. Have a look at the osgprerender, >> osgprerendercubemap examples as well as osgShadow itself. >> >> Robert. >> >> On Mon, Oct 19, 2009 at 7:52 PM, Frederic Marmond <[email protected]> wrote: >>> Hi all, >>> >>> I would like to generate a shadow map before the real scene draw, in >>> order to alter it (add 3rd parties objects shadows in it) before >>> applying the shadow map to the 'real' world. >>> The context is that osg is called inside a custom 3D engine, so a post >>> prerender callback won't be enough. >>> >>> How should I achieve that ? >>> is there a way to do only pre-render stages, then others ? >>> >>> thanks in advance >>> >>> Fred >>> _______________________________________________ >>> 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 >> > _______________________________________________ > 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

