Hi Andreas,
 thanks for the superfast reply :) Adding OffsetCameraDecorator to the cvs would
be a great idea!

Thanks again,
Stefano

Scrive Andreas Zieringer <[EMAIL PROTECTED]>:

> Hi Stefano,
>
> yes you are right using the TileCameraDecorator for the jittering is not
> a perfect solution. I wrote my own OffsetCameraDecorator for this
> purpose if you like I can add it to the OpenSG cvs.
>
> Andreas
>
> > Hi there!
> > I wanted to archive a jitter antialias effect using TileCameraDecorator..
> it
> > works quite fine, except for a little unwanted behaviour I'll describe you
> in a
> > bit. This is a little excerpt of my code.. quite self-explanatory I hope.
> >
> > for (int i=0; i<m_bAntialiasingPasses; i++) {
> >   float dx = JITTER[i].x() / m_pFBO->getPixelWidth();
> >   float dy = JITTER[i].y() / m_pFBO->getPixelHeight();
> >
> >   beginEditCP(m_pTileDecorator);
> >     m_pTileDecorator->setSize(dx, dy, 1+dx, 1+dy);
> >   endEditCP(m_pTileDecorator);
> >
> >   render();
> > }
> >
> > Unfortunately I'm getting a stronger effect on the edges of the window than
> in
> > the center. After looking at the OSGTileCameraDecorator I think I found the
> > reason:
> >
> > TileCameraDecorator::getProjection( [...] ) {
> >
> >   [...]
> >
> >     Real32 left   = getLeft(),
> >            right  = getRight(),
> >            top    = getTop(),
> >            bottom = getBottom();
> >
> >     if(left < 0)
> >         left = -left / width;
> >
> >     if(right < 0)
> >         right = -right / width;
> >
> >     if(top < 0)
> >         top = -top / height;
> >
> >     if(bottom < 0)
> >         bottom = -bottom / height;
> >
> >     // scale the wanted part from the projection matrix
> >     Real32  xs = 1.f / (right - left),
> >             ys = 1.f / (top - bottom);
> >
> >    [...]
> > }
> >
> > So if my JITTER[i] is a negative value, what I'm getting with the
> > TileCameraDecorator is a zoom instead of a simple translation, thus a
> different
> > aliasing compared to the one with a positive JITTER[i]. So, here are the
> > questions :)
> > - What's that code for? If you don't want negative values, I assume that
> you
> > wouldn't like too big values neither.
> > - How could I achieve the wanted result?
> >
> > Thanks for your help!
> >
> >
> > ----------------------------------------------------------------
> > This message was sent using IMP, the Internet Messaging Program.
> >
> > -------------------------------------------------------------------------
> > This SF.net email is sponsored by: Microsoft
> > Defy all challenges. Microsoft(R) Visual Studio 2005.
> > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
> > _______________________________________________
> > Opensg-users mailing list
> > [email protected]
> > https://lists.sourceforge.net/lists/listinfo/opensg-users
> >
>
>
> --
> VREC
> Robert-Bosch-Straße 7
> D-64293 Darmstadt
> Tel. 06151-4921035
>
> -------------------------------------------------------------------------
> This SF.net email is sponsored by: Microsoft
> Defy all challenges. Microsoft(R) Visual Studio 2005.
> http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
> _______________________________________________
> Opensg-users mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/opensg-users
>
>




----------------------------------------------------------------
This message was sent using IMP, the Internet Messaging Program.

-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Opensg-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensg-users

Reply via email to