2
Vote

[Linux] Several issues: IsMouseVisible, Performance regression, X-freeze

description

Hey,
I'm using the latest git-version from the develop3d branch.
There are several issues with that.
1: The game Window doesn't resize when changing the PreferedBackBufferWidth/Height. That has already be reported in another thread
EDIT: Found the change that causes the issue. Reverting it manually fixes the Window-resizing:
https://github.com/mono/MonoGame/commit/24579a31ff720d5a353117a36e556d5953e9b6cf
If I comment out the ChangeClientBounds() call, it also works, but I really don't know what all this is supposed to do. I also noticed that this function is always called with "640x480". No matter what resolution I want to set. So what I really think is that the resolution is set somewhere else correctly and then set back in this function with the new code.
 
2: IsMouseVisible does not change a thing. No matter if it is called in the Game-constructor or somewhere else.
 
3: There seems to be a huge performance regression in the latest git version for linux (?). Even with an empty project that doesn't do anything but paint the background, I can't get more than 40FPS with my i7 2600k/GeForce GTX 570.
I also noticed, that the CPU Usage of the X-process goes up to about 50% without anything being done.
Just about 2-3 weeks ago, the whole game ran at smooth 60FPS. Now even an empty Window is slow.
 
4: When enabling Window.AllowUserResizing, the window can be resized without a problem. However, as soon as I hit the 'Maximize' button of the Window-manager, the X server starts to freeze. Sometimes it can be recovered by smasing Alt+F4 a few times, sometimes I have to restart X completely.
 
Please tell me if you need more information.
 
Thanks,
Adrian

file attachments

comments

b3nn0 wrote May 26, 2012 at 11:23 PM

I've let a simple empty window run for a few seconds with the mono profiler.
Profiler output is attached. Sadly, I can't say much about it :/