W.r.t implementing custom shaders in client scene graphs, I have pondered on this issue previously and came to conclusion that we'd either need to traverse the scene graph in setup and remap the StateSet/StateAttribute to inser the new shaders, or do this remapping at runtime with the CullVisitor in the cull traversal or osg::State in the draw traversal doing the remapping, . This will obviously require runtime remapping would obviously require mods to the core osg and osgUtil.
I'll leave anything like this to later though, first get something working, find the limitations, then figure out a way to refactor things to make it more streamlined.
Robert.
On 10/6/06, Terry Welsh <[EMAIL PROTECTED]> wrote:
Hi guys,
As Adrian said, I'm too busy for shadows lately. (Currently coming up
to speed on osgMaya, actually.) But I definitely plan to do more on
PSSM later.
Right now I think the most important feature PSSM needs (and shadow
maps in general) is the LOD View modification that we have talked
about a lot. I'm also interested in discussing ways to structure the
code to make it as usable as possible for the masses.
Other than that, I'm pretty happy with quality and performance. The
class I posted uses shaders to render the shadow maps as fast as
possible, uses a matrix/shader trick to collapse all off-camera
shadowers to the front of the depth buffer so there is no wasted depth
precision, and has logic so you can tune how many maps are rendered
each frame. I say all this to encourage others to try it out and
contribute their ideas and code.
http://www.reallyslick.com/~terry/stuff/PSSMdemo.tar.gz
The biggest challenge I still see for putting shadow maps in a node
kit is figuring out what parts to include in the node kit and what
parts to leave to the application. Just rendering the shadow maps is
fairly straightforward. But applying them to a scene can be done a
lot of different ways and often involves custom shaders.
--
Terry Welsh - mogumbo 'at' gmail.com
www.reallyslick.com | www.mogumbo.com
> Message: 24
> Date: Fri, 6 Oct 2006 13:08:47 +0100
> From: "Robert Osfield" < [EMAIL PROTECTED]>
> Subject: Re: [osg-users] Re: osgShadow wiki page
> To: "osg users" <[email protected]>
> Message-ID:
> <[EMAIL PROTECTED]>
> Content-Type: text/plain; charset="iso-8859-1"
>
> On 10/6/06, Adrian Egli <[EMAIL PROTECTED]> wrote:
> >
> > Yes i know. I talked with terry this week, also he is not able to work on
> > PSSM for the next few days/week. So i (we) ask the comunity to help us. :-)
>
>
> My plan is to get a high level framework together to hang off the various
> shadow techniques from, and my hope is that this will include PSSM in some
> form. I have been comissioned to implement stencil shadow volumes so on the
> implmenetation side this will be focus, but will certainly being reviewing
> the PSSM code bases as well, and will be happy to help the Terry, yourself
> and others get PSSM working efficiently.
>
> To get the public interface of osgShadow right it also needs testing with a
> range of shadow techniques, I may kick things off with reimplementing
> osgdepthshadow and osgshadowtexture as techniques implemented in
> osgShadow. This will help flesh things out in terms of the API and how to
> go about implementing different techniques. Stencil shadow volumes and
> PSSM are both more complex techniques so I'm inclined to bite off the simple
> stuff first then advance to trying to encompass more complex techniques.
>
> Amoung the requirements for osgShadow I see as key is support for
> multi-threaded, multi-context, multi-view usage, this certainly makes
> implenting some of the techniques more complicated - it will require us to
> buffer some data structures, and this will be on a per technique basis. If
> I get the class structure right this might be will hopefully be realitively
> straight forward to manage, at least that's my hope :-)
>
> Robert.
_______________________________________________
osg-users mailing list
[email protected]
http://openscenegraph.net/mailman/listinfo/osg-users
http://www.openscenegraph.org/
_______________________________________________ osg-users mailing list [email protected] http://openscenegraph.net/mailman/listinfo/osg-users http://www.openscenegraph.org/
