I have a possible culprit.

The composite extension requires premultiplied alpha data when
compositing images with alpha. So (0, 0, 0, 0) means fully transparent
and (0, 0, 0, 1) means solid black. This is consistent with what I am
seeing with the login window.

I found some example code with walks through the proposed matching GLX
FB configs and uses the Render exentsion to check for the alpha mask of
that framebuffer. This is used by code that explicitly wants an alpha
channel for compositing.

Something along the lines of

        for (i = 0; i < numfbconfigs; i++) {
                visinfo = glXGetVisualFromFBConfig(dpy, fbconfigs[i]);
                if (!visinfo) continue;
                pictFormat = XRenderFindVisualFormat(dpy, visinfo->visual);
                if (!pictFormat) continue;
                printf("%d %d %d\n", numfbconfigs, i, 
pictFormat->direct.alphaMask);
        }

When playing around with attributes and looking for matching FB visuals,
there are usually one or more matches and only the last one listed has
an alphaMask of 255, all others are 0.

Now it appears that on my system the only FB config available matching
Minecraft's requested attributes is the one with alphaMask of 255, i.e.
its alpha value *is* passed to the compositor.

Now my guess is that Minecraft simply isn't expecting that, so the alpha
bit contains a random value (typically 0) which is then accidentally
used by the compositor.

So, to support my theory one would need to check if the issue is simply
Minecraft/LWJGL now selecting an RGBA visual with the alpha channel
interpreted by the compositor whereas before that was not the case.

I'll try to hack Minecraft to set the alpha value to 1 in the meantime
to see if it helps. I am just wondering whether this is standard or
nonstandard and Minecraft/LWJGL is supposed to handle this correclty or
not.

-- 
You received this bug notification because you are a member of Desktop
Packages, which is subscribed to xserver-xorg-video-intel in Ubuntu.
https://bugs.launchpad.net/bugs/1277905

Title:
  Game windows (minecraft, titan attacks, maybe others) on Intel are
  transparent and no longer playable

Status in “xserver-xorg-video-intel” package in Ubuntu:
  Confirmed

Bug description:
  Fully up to date Trusty.
  Open Minecraft, notice that the window is transparent - you can see through 
to the desktop wallpaper, making the game unplayable.
  Also tested with Titan Attacks which is also a lwjgl based game - dunno if 
that's coincidence

  This worked a few days ago. Probably before the most recent xorg
  update.

  See screenshots.

  ProblemType: Bug
  DistroRelease: Ubuntu 14.04
  Package: xserver-xorg-video-intel 2:2.99.909-0ubuntu2
  ProcVersionSignature: Ubuntu 3.13.0-7.25-generic 3.13.1
  Uname: Linux 3.13.0-7-generic x86_64
  .tmp.unity.support.test.0:
   
  ApportVersion: 2.13.2-0ubuntu2
  Architecture: amd64
  CompizPlugins: 
[core,composite,opengl,compiztoolbox,decor,grid,imgpng,gnomecompat,scale,workarounds,mousepoll,regex,wall,move,place,vpswitch,resize,unitymtgrabhandles,snap,session,expo,ezoom,unityshell]
  CompositorRunning: compiz
  CompositorUnredirectDriverBlacklist: '(nouveau|Intel).*Mesa 8.0'
  CompositorUnredirectFSW: true
  CurrentDesktop: Unity
  Date: Sat Feb  8 10:54:09 2014
  DistUpgraded: 2014-01-20 08:54:25,315 DEBUG enabling apt cron job
  DistroCodename: trusty
  DistroVariant: ubuntu
  EcryptfsInUse: Yes
  ExtraDebuggingInterest: Yes
  GraphicsCard:
   Intel Corporation 2nd Generation Core Processor Family Integrated Graphics 
Controller [8086:0126] (rev 09) (prog-if 00 [VGA controller])
     Subsystem: Lenovo Device [17aa:21da]
  InstallationDate: Installed on 2012-06-29 (588 days ago)
  InstallationMedia: Ubuntu 12.04 LTS "Precise Pangolin" - Release amd64 
(20120425)
  MachineType: LENOVO 4287CTO
  ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-3.13.0-7-generic 
root=UUID=6088859e-4fc3-4ec8-903f-5b52cdc1d0eb ro quiet splash vt.handoff=7
  SourcePackage: xserver-xorg-video-intel
  UpgradeStatus: Upgraded to trusty on 2014-01-20 (19 days ago)
  dmi.bios.date: 12/05/2012
  dmi.bios.vendor: LENOVO
  dmi.bios.version: 8DET67WW (1.37 )
  dmi.board.asset.tag: Not Available
  dmi.board.name: 4287CTO
  dmi.board.vendor: LENOVO
  dmi.board.version: Not Available
  dmi.chassis.asset.tag: No Asset Information
  dmi.chassis.type: 10
  dmi.chassis.vendor: LENOVO
  dmi.chassis.version: Not Available
  dmi.modalias: 
dmi:bvnLENOVO:bvr8DET67WW(1.37):bd12/05/2012:svnLENOVO:pn4287CTO:pvrThinkPadX220:rvnLENOVO:rn4287CTO:rvrNotAvailable:cvnLENOVO:ct10:cvrNotAvailable:
  dmi.product.name: 4287CTO
  dmi.product.version: ThinkPad X220
  dmi.sys.vendor: LENOVO
  version.compiz: compiz 1:0.9.10+13.10.20131011-0ubuntu4
  version.ia32-libs: ia32-libs N/A
  version.libdrm2: libdrm2 2.4.52-1
  version.libgl1-mesa-dri: libgl1-mesa-dri 10.0.1-1ubuntu2
  version.libgl1-mesa-dri-experimental: libgl1-mesa-dri-experimental N/A
  version.libgl1-mesa-glx: libgl1-mesa-glx 10.0.1-1ubuntu2
  version.xserver-xorg-core: xserver-xorg-core 2:1.15.0-1ubuntu3
  version.xserver-xorg-input-evdev: xserver-xorg-input-evdev 1:2.8.2-1ubuntu2
  version.xserver-xorg-video-ati: xserver-xorg-video-ati 1:7.3.0-1ubuntu2
  version.xserver-xorg-video-intel: xserver-xorg-video-intel 2:2.99.909-0ubuntu2
  version.xserver-xorg-video-nouveau: xserver-xorg-video-nouveau 
1:1.0.10-1ubuntu2
  xserver.bootTime: Sat Feb  8 10:50:45 2014
  xserver.configfile: default
  xserver.errors:
   
  xserver.logfile: /var/log/Xorg.0.log
  xserver.outputs:
   product id                                 728 
   vendor                                     LGD
  xserver.version: 2:1.15.0-1ubuntu3

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/xserver-xorg-video-intel/+bug/1277905/+subscriptions

-- 
Mailing list: https://launchpad.net/~desktop-packages
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~desktop-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to