[GEM-dev] frambuffer does change the scene perspective

cyrille henry cyrille.henry at la-kitchen.fr
Sun May 25 14:31:03 CEST 2008


here is a patch that explain this problem.

cyrille

cyrille henry a écrit :
> hello,
> when using a framebuffer in a patch, the perspective of the main windows is change to (-1, 1) in X and Y.
> So it's no more possible to use custom perspective (sending the perspec message to gemwin is useless).
> moreover, the perspective used lead to distorted images when the gemwin is not square.
> 
> fixing this is quite easy, but will break all patch using frambuffer with a not square gem windows.
> so, i'm wondering if i should commit the fix.
> 
> the fix is mainly to replace line 145 of gemframebuffer.cpp  : 
> 
> glFrustum(-1,1,-1,1,1,25);
> 
> with : 
> 
>   float xDivy = (float)GemMan::m_w / (float)GemMan::m_h;
> 
>   glFrustum(GemMan::m_perspect[0] * xDivy, GemMan::m_perspect[1] * xDivy,	// left, right
>             GemMan::m_perspect[2], GemMan::m_perspect[3],			// bottom, top
>             GemMan::m_perspect[4], GemMan::m_perspect[5]);			// front, back
> 
> but it need to add 
> #include "Base/GemMan.h"
> 
> and to move 
>  static int	   m_w;                 
>  static int       m_h;  
> from private to public in GemMan.h
> 
> should i commit this?
> 
> cyrille
> 
>                
> 
> _______________________________________________
> GEM-dev mailing list
> GEM-dev at iem.at
> http://lists.puredata.info/listinfo/gem-dev
> 
> 
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: perspect_and_frambuffer.pd
URL: <http://lists.puredata.info/pipermail/gem-dev/attachments/20080525/eff432de/attachment.txt>


More information about the GEM-dev mailing list