Re: [clutter] gnome-shell / mutter / ARB_texture_rectangle



On Wed, 2008-11-12 at 17:04 -0500, Owen Taylor wrote:
> On Thu, 2008-11-06 at 10:04 +0000, Matthew Allum wrote:
> > Hi;
> > 
> > On Wed, 2008-11-05 at 13:03 -0500, Owen Taylor wrote:
> > > > 
> > > > I think making it usage explicit and contained like this is really the
> > > > only way to go in we do bring back in support for ARB_texture_rectangle
> > > > without a lot of complexity and other pain elsewhere. 
> > > > 
> > > > Re devel branch - I dont see why this could not end up in the stable
> > > > branch of which we are already having to track pretty much with mutter.
> > > 
> > > My initial expectation was that there would be significant code churn
> > > and API changes, but looking at it, the "remove texture_rectangle
> > > support" patch is a lot smaller than I expected and doesn't look to hard
> > > or intrusive to reintroduce. 
> > 
> > Right, it should hopefully be pretty strait forward - all Id request is
> > that we then something like a
> > cogl_enable_legacy_texture_rectangle(boolean) which enables this old
> > logic in texture creation and is well documented as to potential
> > downsides it introduces into apps enabling it.
> 
> Ewww. :-)
> 
> I guess my feeling is that a cogl API addition is a cogl API addition,
> and that doing something entirely hacky doesn't make it less of an
> addition.
> 
> To avoid API additions I first thought:
> 
>  - Could this be done entirely within cogl with an environment variable?
> 
>    Unfortunately no: the cogl_texture code doesn't have enough context
>    to distinguish random textures from texture_from_pixmap textures, 
>    so the environment variable reading has to be done 
> 
>  - Can it be done as a private clutter => cogl API in an not-installed
>    header file?
>  
>    Unfortunately no: to do the multi-texturing that MutterShapedTexture
>    uses to shape the window, the shape texture needs to be a 
>    texture_rectangle if the pixmap texture is a texture_rectangle.
> 
> What about, in my patch, changing COGL_TEXTURE_ALLOW_RECTANGLE
> to COGL_TEXTURE_ALLOW_RECTANGLE COGL_TEXTURE_ALLOW_LEGACY_RECTANGLE
> and adding a scary warning like:
> 
>   GL_ARB_texture_rectangle rectangle has numerous limitations,
>   including no repeats, and no mipmapping. It also requires incompatible
>   texture coordinate in custom shaders. Future versions of Clutter
>   will remove GL_ARB_texture_rectangle support entirely. 
> 
> ? But if you want to go with your approach, sure, I can do that.
> I'd need to also add:
> cogl_force_legacy_texture_rectangle(boolean), because there are cases
> where NPOT textures look like they are there but don't work properly.

I wanted to push some more on this.

 - What approach do I need to go with for a patch that will be accepted?

 - If that isn't clear, what research needs to be done and what
   information needs to be provided?

Thanks,

- Owen
 



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]