OK, if you really need to know, in your app, what is visible and what isn't,
then you probably have the right approach.
   -Paul


> -----Original Message-----
> From: [EMAIL PROTECTED] 
> [mailto:[EMAIL PROTECTED] On Behalf 
> Of Lars Karlsson
> Sent: Friday, May 23, 2008 11:52 AM
> To: osg-users
> Subject: Re: [osg-users] Item buffer for lines in OSG
> 
> Hi Paul,
> 
> The technique used in my application is a kind of deferred shading.
> I have to scan each pixel of the "item ID buffer" to detect 
> edges that are visible in the current frame. 
> 
> Therefore, an edge that has at least one pixel rendered into 
> the current frame, is deemed "visible". In the next pass, I 
> collect all "visible" edges into a vector<>, additionally 
> process vector<> for effects, and then finally render 
> effected lines to the color framebuffer.
> 
> OcclusionQueryNodes? I took a look into the example, but I 
> can't see how this Node could return a LIST of EDGES visible 
> in the current frame?
> 
> Sincerely,
> Lars
> 
> 
> 
> 
> 
> > Hi Lars --
> >
> > It's not clear to me at all why you would want to do what 
> you describe.
> > Checking every pixel in your prerender buffer seems 
> prohibitively expensive,
> > unless we're talking about billions of vectors... Because 
> your app is old,
> > perhaps you should consider updating its rendering algorithm to take
> > advantage of more modern hardware.
> >
> > Is it possible for your app to programmatically identify 
> "heavy" portions of
> > your scene graph? If so, I'd recommend parenting those 
> heavy subgraphs to
> > OcclusionQueryNodes, which will do the occlusion test and 
> cull for you.
> > Spatially organizing your data will help improve OSG's 
> opportunities for
> > culling as well.
> >   -Paul
> >
> >
> > > -----Original Message-----
> > > From: [EMAIL PROTECTED]
> > > [mailto:[EMAIL PROTECTED] On Behalf
> > > Of Lars Karlsson
> > > Sent: Thursday, May 22, 2008 3:45 PM
> > > To: [email protected]
> > > Subject: [osg-users] Item buffer for lines in OSG
> > >
> > > Hi,
> > >
> > > <apologies for a relatively long post>
> > >
> > >
> > > I have an old OpenGL application which uses a so-called "item
> > > buffer for lines".
> > > This buffer is based on the idea to associate, upon loading,
> > > unique IDs to all the lines in the 3D model, then (on 
> each frame) to:
> > >
> > > - render all these lines (each with a different color) into
> > > this "item buffer",
> > >   with z-test on and lighting off (in order to preserve
> > > lines' colors),
> > >
> > > - scan the item buffer in order to detect the lines visible
> > > in the current frame.
> > >   (Since the line colors are unique, a line is visible if it
> > > has at least
> > >   one pixel in this item buffer.) Finally, I
> > >
> > > - render these lines (visible in the current frame) into
> > >   the color framebuffer.
> > >
> > >
> > > Now, since my 3D models are getting big, I decided to use
> > > OpenSceneGraph 2.4
> > > in order to optimize the processing using occlusion culling, state
> > > sorting and other nice features of scene graphs.
> > >
> > >
> > > However, where to start? OSG Quick
> > > Guide did not help, so any tips would be welcome. My 
> first idea is to:
> > >
> > > - write my own plugin which reads an .osg 3D model and
> > > extracts the lines
> > >   of the model into a separate data structure, because it
> > > seems that .osg
> > >   file format does not enforce serialization of lines
> > >
> > > - associate unique IDs (which are in 1-1 mapping with 
> unique colors)
> > >   to the extracted lines
> > >
> > > - pre-render the model (z-buffer on, lighting off, with
> > > polygons in black)
> > >   into a  osg::Camera::FRAME_BUFFER_OBJECT
> > >
> > > - scan each pixel of the osg::Camera::FRAME_BUFFER_OBJECT to
> > > extract currently visible
> > >   lines, and place them into a separate vector<>
> > >
> > > - render this vector<> (this means that I won't use the 
> scene graph at
> > >   all for final rendering)
> > >
> > >
> > > Any tips?
> > >
> > > Thanks, Lars
> 
> 
> 
>       
> 
> _______________________________________________
> osg-users mailing list
> [email protected]
> http://lists.openscenegraph.org/listinfo.cgi/osg-users-opensce
negraph.org

_______________________________________________
osg-users mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

Reply via email to