Hi Mathias -- I will test with your latest sometime today (US time), or maybe tomorrow. I have quite a bit to do today, and my build is currently broke due to the work on the Version header.

Mathias Fröhlich wrote:
Thanks for posting this and letting me look at it, very informative.
Well, this is by far not the only possible implementation.
If you have a better one, I am interrested too.

Things to consider is to do that in a CullCallback without the need of a static amount of cameras. Also, I would wish that osg's cameras/rendering backend would provide some hooks for such image based stuff so that we can have a camera that automatically renders into a screen sized texture and a compositing step that automatically sets up texture coordinate lookup for the screen sized stuff (texture rectangle, nearest interpolation, etc ...).
Once I have a better picture of what is needed here and could be reused ...

I am working on an alternate implementation, one that could be folded into core OSG as a first-class node, call it DepthPeelGroup. You might have seen me discussing the overall strategy in the thread "Repeatable rendering of subgraphs, ideas?". The idea is to insert a custom RenderStage into the render graph during cull, which would do the multiple passes as well as the compositing. Currently, I'm close to having this working, but not quite there yet. Just a few more issues to work out.

I'm also trying to find a solution to how to handle the user attaching a scene graph containing both opaque and translucent geometry. It doesn't make sense to do peeling on opaque geometry. Opaque geometry should be rendered just once, with the results used as the base layer for the compositing. I'm hoping my custom RenderStage will be able to determine which RenderBins contain opaque geometry and which contain transparent, as the CullVisitor should have already done this sorting by time the actual drawing happens. I haven't had time to dig into this yet, so I'm still not sure it's possible.

A client is funding this work, but they typically make things open source, so I'm optimistic that I'll be able to share it when it's complete.
   -Paul
_______________________________________________
osg-submissions mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-submissions-openscenegraph.org

Reply via email to