[opensuse] Dualhead and 3D
Hi I have openSUSE 10.2 running in dualhead mode with an NVIDIA GeForce 6800 card and the latest NVIIDIA proprietary drivers. All of which works fine, except for 3D games. I also have a W2k partition which my son uses for his games. On W2k it is possible to run a game in 3D on one screen. When we try to run 3D games in SUSE using Cedega we cannot achieve the same. In other words what we get is the game spread across the two screens. I have looked at the NVIDIA server settings GUI but I can't find a setting there, nor in SAX. My question is, is what I want to do possible in Linux ? I'd be interested if anybody on the list has achieved what I want to do, if so can you give me an example Xorg conf so I can modify mine ? TIA Mike -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
On Sunday 17 December 2006 14:41, michael norman wrote:
I have openSUSE 10.2 running in dualhead mode with an NVIDIA GeForce 6800 card and the latest NVIIDIA proprietary drivers. All of which works fine, except for 3D games.
I also have a W2k partition which my son uses for his games. On W2k it is possible to run a game in 3D on one screen. When we try to run 3D games in SUSE using Cedega we cannot achieve the same. In other words what we get is the game spread across the two screens.
I have looked at the NVIDIA server settings GUI but I can't find a setting there, nor in SAX.
My question is, is what I want to do possible in Linux ?
Yes but no. The situation is, you want a big virtual Xinerama screen for the desktop, but a single screen when playing games. You can do this with two separate Xorg.confs, but at present Xorg cannot be reconfigured while it is running, so you would have to start X by hand with the alternate config. I hear Xorg are working on adding dynamic configuration at the moment, though. Alternatively the game could detect that it is running under Xinerama and only draw to half of the virtual screen, but a Windows game running in Xinerama is never going to do this for you.
I'd be interested if anybody on the list has achieved what I want to do, if so can you give me an example Xorg conf so I can modify mine ?
This is clunky but it does what you want: Back up your xinerama xorg.conf, then reconfigure using sax, disable dual-head and get it set up as you like it for games, finally move the xorg.conf created by sax to xorg.conf.games and restore the xinerama xorg.conf. So when you want to start a games session, do startx -- -config /etc/X11/xorg.conf.games :1 and you have your games session running in its own X server on display :1 (ctrl-alt-f8). Me, I like bzflag and sauerbraten running across both screens :). HTH Will -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
On Monday 18 December 2006 09:33, Will Stephenson wrote:
On Sunday 17 December 2006 14:41, michael norman wrote:
I have openSUSE 10.2 running in dualhead mode with an NVIDIA GeForce 6800 card and the latest NVIIDIA proprietary drivers. All of which works fine, except for 3D games.
I also have a W2k partition which my son uses for his games. On W2k it is possible to run a game in 3D on one screen. When we try to run 3D games in SUSE using Cedega we cannot achieve the same. In other words what we get is the game spread across the two screens.
I have looked at the NVIDIA server settings GUI but I can't find a setting there, nor in SAX.
My question is, is what I want to do possible in Linux ?
Yes but no. The situation is, you want a big virtual Xinerama screen for the desktop, but a single screen when playing games. You can do this with two separate Xorg.confs, but at present Xorg cannot be reconfigured while it is running, so you would have to start X by hand with the alternate config. I hear Xorg are working on adding dynamic configuration at the moment, though.
Alternatively the game could detect that it is running under Xinerama and only draw to half of the virtual screen, but a Windows game running in Xinerama is never going to do this for you.
I'd be interested if anybody on the list has achieved what I want to do, if so can you give me an example Xorg conf so I can modify mine ?
This is clunky but it does what you want: Back up your xinerama xorg.conf, then reconfigure using sax, disable dual-head and get it set up as you like it for games, finally move the xorg.conf created by sax to xorg.conf.games and restore the xinerama xorg.conf. So when you want to start a games session, do startx -- -config /etc/X11/xorg.conf.games :1 and you have your games session running in its own X server on display :1 (ctrl-alt-f8).
Me, I like bzflag and sauerbraten running across both screens :).
HTH
Will
Will Thanks, pretty much confirms what I had suspected to be the case. Mike -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
I have openSUSE 10.2 running in dualhead mode with an NVIDIA GeForce 6800 card and the latest NVIIDIA proprietary drivers. All of which works fine, except for 3D games.
I also have a W2k partition which my son uses for his games. On W2k it is possible to run a game in 3D on one screen. When we try to run 3D games in SUSE using Cedega we cannot achieve the same. In other words what we get is the game spread across the two screens.
I have looked at the NVIDIA server settings GUI but I can't find a setting there, nor in SAX.
My question is, is what I want to do possible in Linux ?
If I understood your question good enough I think you can run any
program in only one of the two screens doing this: (assuming your X is configured by default as display 0): DISPLAY=:0.0 nameoftheprogram or DISPLAY=:0.1 nameoftheprogram This will start "nameoftheprogram" on the screen 0 of display 0 or in screen 1 of display 0 that could solve your problem. I've never used Cedaga before so I don't know if that will work. David. -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
On Dec 18, 06 05:26:53 -0700, David Canar wrote:
I have openSUSE 10.2 running in dualhead mode with an NVIDIA GeForce 6800 card and the latest NVIIDIA proprietary drivers. All of which works fine, except for 3D games.
I also have a W2k partition which my son uses for his games. On W2k it is possible to run a game in 3D on one screen. When we try to run 3D games in SUSE using Cedega we cannot achieve the same. In other words what we get is the game spread across the two screens.
I have looked at the NVIDIA server settings GUI but I can't find a setting there, nor in SAX.
My question is, is what I want to do possible in Linux ?
Probably in the *far* future, when dynamic monitor reconfiguration is available, and all middleware is adapted to that as well...
If I understood your question good enough I think you can run any program in only one of the two screens doing this: (assuming your X is configured by default as display 0):
DISPLAY=:0.0 nameoftheprogram
or
DISPLAY=:0.1 nameoftheprogram
Not in Xinerama or MergedFB mode. Then only one display is available.
Matthias
--
Matthias Hopf
I also have a W2k partition which my son uses for his games. On W2k it is possible to run a game in 3D on one screen. When we try to run 3D games in SUSE using Cedega we cannot achieve the same. In other words what we get is the game spread across the two screens.
I have looked at the NVIDIA server settings GUI but I can't find a setting there, nor in SAX.
My question is, is what I want to do possible in Linux ?
It is definitely possible with nVidia cards... basically there are a couple of lines you need to add to your xorg file that will tell X that when an application wants full screen - like Cedega, it switches modes and displays the game full screen on one monitor only. The other monitor is turned off until you exit the game. This is actually all nicely documented in the nVidia documentation - where I figured it all out. What you're looking for is a feature called Metamodes. I've included the relevant parts of an old xorg that I set up manually... this worked on dual head setup with an Acer 15 TFT and a 15 CRT. Note - this is a trimmed xorg... the superfluous/unrelated bits have been stripped. If you use this type of setup, you do not need multiple xorgs or weird DISPLAY settings, etc. just the single xorg using metamodes. I'd highly recommend you go read the nVidia documentation on this feature. It's well documented and has examples etc. -------------------------- Section "Module" Load "dbe" Load "type1" Load "freetype" Load "extmod" Load "glx" Load "v4l" EndSection Section "Monitor" DisplaySize 620 230 HorizSync 31-60 Identifier "Monitor[0]" ModelName "F51" Option "DPMS" VendorName "ACER" VertRefresh 56-85 UseModes "Modes[0]" EndSection Section "Screen" # removed the Display subsections for clarity Device "Device[0]" Identifier "Screen[0]" Monitor "Monitor[0]" Option "CoolBits" "1" Option "TwinView" "True" Option "TwinViewOrientation" "LeftOf" Option "UseEdidFreqs" "True" Option "MetaModes" "1024x768, 1024x768; 1024x768, NULL; NULL,1024x768" Option "SecondMonitorHorizSync" "28.0 - 69.0" Option "SecondMonitorVertRefresh" "43.0 - 120.0" EndSection Section "Device" BoardName "GeForce 6600/GeForce 6600 GT" BusID "1:0:0" Driver "nvidia" Identifier "Device[0]" Option "XaaNoOffScreenPixmaps" "on" Option "XaaNoPixmapCache" "on" VendorName "NVidia" EndSection Section "ServerLayout" Identifier "Layout[all]" InputDevice "Keyboard[0]" "CoreKeyboard" InputDevice "Mouse[1]" "CorePointer" Option "Clone" "off" Option "Xinerama" "off" Screen "Screen[0]" EndSection -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
On Monday 18 December 2006 12:49, Clayton wrote:
I also have a W2k partition which my son uses for his games. On W2k it is possible to run a game in 3D on one screen. When we try to run 3D games in SUSE using Cedega we cannot achieve the same. In other words what we get is the game spread across the two screens.
I have looked at the NVIDIA server settings GUI but I can't find a setting there, nor in SAX.
My question is, is what I want to do possible in Linux ?
It is definitely possible with nVidia cards... basically there are a couple of lines you need to add to your xorg file that will tell X that when an application wants full screen - like Cedega, it switches modes and displays the game full screen on one monitor only. The other monitor is turned off until you exit the game.
This is actually all nicely documented in the nVidia documentation - where I figured it all out.
What you're looking for is a feature called Metamodes. I've included the relevant parts of an old xorg that I set up manually... this worked on dual head setup with an Acer 15 TFT and a 15 CRT. Note - this is a trimmed xorg... the superfluous/unrelated bits have been stripped. If you use this type of setup, you do not need multiple xorgs or weird DISPLAY settings, etc. just the single xorg using metamodes.
I'd highly recommend you go read the nVidia documentation on this feature. It's well documented and has examples etc. Clayton
Thanks, I'll have a look at the docs in the next day or so. Mike -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
participants (5)
-
Clayton
-
David Canar
-
Matthias Hopf
-
michael norman
-
Will Stephenson