[Linux - KDE neon]LOVE Does Strange Things to KWin

Questions about the LÖVE API, installing LÖVE and other support related questions go here.
Forum rules
Before you make a thread asking for help, read this.
Post Reply
User avatar
Eamonn
Party member
Posts: 550
Joined: Sat May 04, 2013 1:29 pm
Location: Ireland

[Linux - KDE neon]LOVE Does Strange Things to KWin

Post by Eamonn »

Whenever LOVE is run, my window manager, my KWin window manager freaks out. The shadows for my KDE panels disappear, as do my wobbly windows (I miss compiz, okay?) and everything just all around functions strangely. There's lot's of tearing, strange gaps between windows, and whenever I use the snap shortcut to maximise a window it just shows an outline (similar to how Xfce can look). Animations completely stop working. My intellihide panel which acts like a dock just pops into existence. Window shadows disappear and it looks like some windows have a black square being rendered behind them. When I close the game window, the screen flashes black for less than half a second before returning back to normal.

I'm using KDE neon 5.11.3, which is based on Ubuntu 16.04 with Mesa 17.2.4 (with support only up to OpenGL 3.0) on an RX 480. SDL-based engines/libraries such as PyGame or even SDL itself work perfectly fine and don't do this.

Here is an image of what is going on:

I've seen this happen before but I don't remember how or why. I used LOVE on KDE neon back in July and it worked fine. I uninstalled LOVE not long after that because I was doing a cleanup of my system and upon reinstalling it about 10 minutes ago I found that this happens. Is there a flag I can launch LOVE with to fix this perhaps? Why is it being caused?

Thanks.
"In those quiet moments, you come into my mind" - Liam Reilly
User avatar
bartbes
Sex machine
Posts: 4946
Joined: Fri Aug 29, 2008 10:35 am
Location: The Netherlands
Contact:

Re: [Linux - KDE neon]LOVE Does Strange Things to KWin

Post by bartbes »

Eamonn wrote: Sun Nov 19, 2017 4:42 pm The shadows for my KDE panels disappear, [...] and it looks like some windows have a black square being rendered behind them.
So it sounds like it's your compositor that breaks, somehow. In case you don't know, the compositor is the part of the (x11) graphics stack that implements transparent windows, effects, etc. In case of KDE the compositor is built into kwin, as far as I know, but I'm not a KDE user.
Eamonn wrote: Sun Nov 19, 2017 4:42 pm When I close the game window, the screen flashes black for less than half a second before returning back to normal.
That's interesting. Maybe you can see what's happening here in your system logs, xsession logs (usually in ~/.xsession-errors), or even just in the list of running processes.
Eamonn wrote: Sun Nov 19, 2017 4:42 pm SDL-based engines/libraries such as PyGame or even SDL itself work perfectly fine and don't do this.
It's likely related to OpenGL, not SDL. Can you try other OpenGL applications?
Eamonn wrote: Sun Nov 19, 2017 4:42 pm Here is an image of what is going on
Unfortunately it's hard to tell what is going wrong, except for the black borders, since I don't know what it's supposed to look like.
Eamonn wrote: Sun Nov 19, 2017 4:42 pm I've seen this happen before but I don't remember how or why. I used LOVE on KDE neon back in July and it worked fine. I uninstalled LOVE not long after that because I was doing a cleanup of my system and upon reinstalling it about 10 minutes ago I found that this happens. Is there a flag I can launch LOVE with to fix this perhaps? Why is it being caused?
I remember someone (you?) talking about this before, but I can't remember the exact problem or solution. You could try the OpenGL ES backend (set the environment variable LOVE_GRAPHICS_USE_OPENGLES to 1), but there's no flag to stop breaking KDE, it's not like love does this on purpose. The only thing that comes to mind is love requesting a graphics mode that your compositor (which also uses OpenGL) can't handle, but I'd hope that wouldn't be an issue. I don't see a battery indicator, but are you on a laptop with multiple GPUs? Does this happen with a single screen active?
User avatar
Eamonn
Party member
Posts: 550
Joined: Sat May 04, 2013 1:29 pm
Location: Ireland

Re: [Linux - KDE neon]LOVE Does Strange Things to KWin

Post by Eamonn »

I'm pretty sure the compositor is built into KWin from what I can tell. Any settings for the compositor are located in the settings for KWin. That said, I'm really not an expert on this stuff. I just have a basic knowledge of this from looking up why stuff breaks/how to do certain things and picking things up that way.

Tried looking in the system logs. It was almost 1,000,000 lines long and mostly contained "Unhandled property update "children-display"". The other stuff is all of this, with a varying line number: "process 8202: arguments to dbus_connection_unref() were incorrect, assertion "connection->generation == _dbus_current_generation" failed in file ../../dbus/dbus-connection.c line [varies]." Then it says "This is normally a bug in some application using the D-Bus library" next, and that makes up around 98% of the file. There are some miscellaneous XCB erros and unhandled "toggle-type" property updates from what I can see. I'm not going to look through everything in the huge file as I don't have time. That is more or less the gist of it and I'm not sure what is being caused by LOVE. I tried renaming this to "._xsession-errors", then running my main.lua file (which only has load, update, draw and quit; all empty) to see if a new file was generated so that I could see what errors, if any, were being caused by LOVE. No new file was generated during and for a while after the time I had the window open, and the renamed "._xsession-errors" file didn't change (not that I expected it to).

As for OpenGL being the culprit, all of my SFML programs run perfectly fine and to my knowledge that uses OpenGL. Minecraft works no problem, and my (limited) library of Linux-compatible Steam games draw fine as well.

I imagine not, but if there are any other images I could provide I'll do that. Just wanted to provide whatever I could.

I don't think it was me talking about that. If it was, I don't remember. Changing that environment variable hasn't seem to have done anything unfortunately (I imagine I set the variable correctly; "export LOVE_GRAPHICS_USE_OPENGLES=1"). I hope that isn't the issue, as it works fine with other Linux compositors such as Xfwm and it's built-in compositor or whatever other DE's use (I can't remember off the top of my head). I'm using a PC with dual monitors. Turning off one doesn't have any effect.

Perhaps this is more of a KWin problem than a LOVE problem then?
"In those quiet moments, you come into my mind" - Liam Reilly
User avatar
bartbes
Sex machine
Posts: 4946
Joined: Fri Aug 29, 2008 10:35 am
Location: The Netherlands
Contact:

Re: [Linux - KDE neon]LOVE Does Strange Things to KWin

Post by bartbes »

I did some googling and came across this forum post. Is your compositor backend set to OpenGL 2.0, and if so, can you try setting it to OpenGL 3.1?
User avatar
ganthore
Prole
Posts: 1
Joined: Mon Feb 05, 2018 9:16 pm
Location: Raleigh, NC
Contact:

Re: [Linux - KDE neon]LOVE Does Strange Things to KWin

Post by ganthore »

KDE automatically attempts to disable the compositor whenever a game launches. I've seen this happen before with KDE while running love. I think it's best to disable the compisitor when running games, but if you insist on leaving that running while playing a game, you can force kwin to leave the compositor by creating a window rule:
https://userbase.kde.org/KWin_Rules_Window_Attributes

You could also configure kwin to not let other applications suspend compositing in general as a global rule: https://www.phoronix.com/scan.php?page= ... &px=OTI4Ng
Post Reply

Who is online

Users browsing this forum: Ahrefs [Bot], Bing [Bot] and 5 guests