fullscreen support for games
vetasana at gmx.de
Sun Oct 23 13:08:23 PDT 2005
I want to know if it is possible for applications to take over the graphics hardware. I have tried to run a Windows game through Wine which is a few years old (Might & Magic VI). Running the game changes the screen resolution which is very nice, but an error message says that the game wants to have 16 bpp depth, whereas the desktop has 32 bpp. I wonder if an application (in this case the Wine DirectX layer) can request a screen depth change.
The RandR X extension allows to change the resolution of a screen, but not the depth. I have read that this is not supported because toolkits have emulation code dealing with it. Normally, I want to keep the depth I have set: 32 Bit. All windowed applications have to adapt to that. But running a game is a different matter: I wonder why the desktop resolution is changed at all for this use case. I only want to play a game which should take over the graphics hardware for the time I play. This means creating a new screen on the fly, suspending the desktop, and allow the game to take full advantage of the hardware. My desktop should not consume any CPU or graphics processing in the meantime. If I want to read my Emails, I expect the desktop back after pressing a hotkey combination like ALT-TAB. This combination should work all time and return to my 32 Bit high-res desktop, suspending the application screen and iconifying the application. After having read my Emails, I want to ret
urn to the game. This I can do in Windows XP, but not yet with Linux/X11.
I think the following is needed to support the described scenario:
- create a new screen on the fly
- activate the screen exclusively, suspending other screens (eventually swapping them out to harddisk to provide full memory resources as well)
- suspending the screen, getting back to the desktop (the first set of screens after login, which is special)
- allow ALT-TAB hotkey which cannot be disabled
- delete a screen
This is written from a user's perspective. I would like to know what is possible now and what can be done to support this kind of desktop use which is common for home systems. I know that it is possible to start another X server, but this is not convenient for Joe User, and does consume more resources which eventually are not there.
More information about the xorg