Ian Romanick wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Dave Airlie wrote:
>   
>> Hey,
>>
>> So I've been playing with radeon FBOs and have run into a problem with how 
>> to allow apps to get an FBOs that isn't swrast fallback :-)
>>
>> radeons can by default render to ARGB8888, ARGB4444, RGB565 mostly, now in 
>> this case when the app asks for a texture format of GL_RGBA, 
>> GL_UNSIGNED_BYTE, we return by default a texture format, of 
>> &_mesa_texformat_rgba8888_rev
>>
>> This allows us to do memcpy texture uploads in theory, however
>> when it comes time to render to that texture, I have to go hit a sw 
>> fallback which sucks badly.
>>
>> I see my options as 
>> a) apps are smart, ignore problem and move on.
>> b) pick FBO friendly texture formats by default at the expense of textures
>> c) magically change the texture format when I realise something is 
>> rendering to it (is this possible any ideas?)
>> d) at least for r300, hack up the fragment shader to swizzle the outputs
>> though I think for dest blending this might not work like I think it 
>> would.
>>
>> hopes nobody tells me the FBO spec covers this and I'm lazy :)
>>     
>
> The intention when we wrote the FBO spec is that drivers would do either
> B or C.  In the typical usage an application won't supply a texture with
> data and render to it.  Apps will usually do one or the other.  Since
> you should be able to quickly reformat the component order of a buffer
> once it's already in card memory, C is probably the best performance
> choice.  However, B is a lot less code to write.
>
> As you point out, D won't work.  As for A...seriously? :)
>   
One should point out, though, that B) makes the same assumptions for 
apps with a lot of texture downloads,
as A) does for apps using fbos, although the outcome if you supply a bad 
format usually isn't that catastrophical...

/Thomas

> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.9 (GNU/Linux)
> Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
>
> iEUEARECAAYFAknJVbAACgkQX1gOwKyEAw+vJQCY5weCuqx9SwsAEhajohFGxeOb
> 9wCfZSJ7J9nfliZQaKQjm0fM5lXeCIE=
> =5diw
> -----END PGP SIGNATURE-----
>
> ------------------------------------------------------------------------------
> Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) are
> powering Web 2.0 with engaging, cross-platform capabilities. Quickly and
> easily build your RIAs with Flex Builder, the Eclipse(TM)based development
> software that enables intelligent coding and step-through debugging.
> Download the free 60 day trial. http://p.sf.net/sfu/www-adobe-com
> _______________________________________________
> Mesa3d-dev mailing list
> Mesa3d-dev@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/mesa3d-dev
>   


------------------------------------------------------------------------------
Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) are
powering Web 2.0 with engaging, cross-platform capabilities. Quickly and
easily build your RIAs with Flex Builder, the Eclipse(TM)based development
software that enables intelligent coding and step-through debugging.
Download the free 60 day trial. http://p.sf.net/sfu/www-adobe-com
_______________________________________________
Mesa3d-dev mailing list
Mesa3d-dev@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mesa3d-dev

Reply via email to