[PATCH RFC xserver] dix: Work around non-premultiplied ARGB cursor data
Laurent Carlier
lordheavym at gmail.com
Tue Jun 28 09:37:43 UTC 2016
Le 28/06/2016 à 10:22, Michel Dänzer a écrit :
> From: Michel Dänzer <michel.daenzer at amd.com>
>
> Some games incorrectly use non-premultiplied ARGB cursor data, presumably
> because that's what Windows uses. On some hardware (and with SWcursor),
> this breaks areas of the cursor which are supposed to be transparent
> (and presumably also translucent areas, but that's less noticeable).
>
> This change checks for pixels with alpha == 0 and any non-alpha component
> != 0. If any such pixel is found, the data is assumed to be
> non-premultiplied and fixed up by multiplying the RGB components with the
> alpha component.
>
> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=92309
> Signed-off-by: Michel Dänzer <michel.daenzer at amd.com>
> ---
>
> I'm on the fence about whether this is a good or bad idea.
>
> Pro:
> * Allows users with affected setups to play broken games
> * Less overhead than a corresponding workaround in the driver
>
> Con:
> * Makes the problem completely invisible to game developers, so once
> it's in we can probably never remove it again
>
> Opinions?
>
Successfully tested with Legend of Grimrock, Shadow Warrior and The Cave
games.
Maybe you can hide this behind an xorg config option?
--
Laurent Carlier
http://www.archlinux.org
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 473 bytes
Desc: OpenPGP digital signature
URL: <https://lists.x.org/archives/xorg-devel/attachments/20160628/9837d303/attachment.sig>
More information about the xorg-devel
mailing list