WineD3D BltOverride overhaul
Stefan Dösinger
stefan at codeweavers.com
Wed Mar 24 06:35:55 CDT 2010
Am Mittwoch 24 März 2010 12:00:48 schrieb Henri Verbeet:
> On 24 March 2010 11:55, Roderick Colenbrander <thunderbird2k at gmail.com>
wrote:
> > Sure color keying needs to be handled by the fragment pipe. Though I
> > would like to avoid touching that area right now since I don't know
> > anything about it and I had a feeling when I talked about it with
> > Stefan that this code is a bit fragile. So in the meantime I would
> > like to have a way to disable color key fixups in LoadLocation when we
> > perform a 2d blit.
> Perhaps it's possible to implement as a different surface location.
I'd leave color keying out of the blitter redesign and stick to the current
alpha based color keying emulation. Fixing the blitter is complicated enough
as it is.
Implementing it in the fragment pipeline is certainly possible, if we are
prepared to drop support for d3d color keying on cards that don't at least
support NV register combiners(texture shader is not needed), ati fragment
shader or ARBfp. Requiring either of those is not unreasonable, support for
that goes back to TNT2 cards, ATI radeon 8500 and I think all Intel GPUs.
However, implementing it in the fragment pipeline when possible and having a
texture loading fallback like we currently have won't help a lot. All issues
with the current setup know affect the code design. If we keep the fallback, we
have to deal with the load time alpha replacement in some way anyway, and we
don't gain anything substantial from the alternative nicer fragment pipeline
based codepaths.
More information about the wine-devel
mailing list