You are not logged in.

#1 2012-07-05 23:35:53

DrKillPatient
Member
Registered: 2011-07-28
Posts: 85

[SOLVED] Extra resolutions for games with Nvidia drivers

When using the nouveau drivers, games and other such applications will allow me to select any resolution my screens (one 1920x1080, the other 1680x1050-- the latter of which is to the left of the first) will support, as well as 3600x1080, the combined total (spanning both screens). For instance, I can make something like Tux Racer 1280x800, and either windowed or fullscreen. However, with the Nvidia proprietary drivers, the only resolutions that I can select are 1920x1080, 1680x1050, and 3600x1080. This prevents me from playing windowed games in such a way that they don't cover my whole screen, or playing fullscreen games at lower resolutions for higher performance. How can I use the Nvidia drivers and the "extra" resolutions? (Ideally, all those listed in the Xinerama output below)

Xrandr outputs this:

Screen 0: minimum 8 x 8, current 3600 x 1080, maximum 16384 x 16384
DVI-I-0 connected 1920x1080+1680+0 (normal left inverted right x axis y axis) 510mm x 287mm
   1920x1080      60.0*+
   1680x1050      60.0  
   1600x1200      60.0  
   1440x900       59.9  
   1400x1050      74.8     60.0  
   1280x1024      75.0     60.0  
   1280x960       60.0  
   1280x800       59.8  
   1152x864       75.0  
   1024x768       75.0     70.1     60.0  
   832x624        74.6  
   800x600        75.0     72.2     60.3     56.2  
   700x525       149.5    120.0  
   640x480        75.0     72.8     59.9  
   512x384       140.1    120.0  
   400x300       144.4  
   320x240       145.6    120.1  
DVI-I-1 connected 1680x1050+0+0 (normal left inverted right x axis y axis) 474mm x 296mm
   1680x1050      59.9*+   60.0  
   1440x900       75.0     59.9  
   1400x1050      60.0  
   1280x1024      75.0     60.0  
   1280x960       60.0  
   1152x864       75.0  
   1024x768       75.0     70.1     60.0  
   832x624        74.6  
   800x600        75.0     72.2     60.3     56.2  
   700x525       149.5    120.0  
   640x480        75.0     72.8     59.9  
   512x384       140.1    120.0  
   400x300       144.4  
   320x240       145.6    120.1  
DVI-I-2 disconnected (normal left inverted right x axis y axis)
HDMI-0 disconnected (normal left inverted right x axis y axis)
DVI-I-3 disconnected (normal left inverted right x axis y axis)

My xorg.conf is:

Section "ServerLayout"
    Identifier     "Layout0"
    Screen      0  "Screen0" 0 0
    InputDevice    "Keyboard0" "CoreKeyboard"
    InputDevice    "Mouse0" "CorePointer"
    Option         "Xinerama" "0"
EndSection

Section "Files"
    FontPath       "/usr/share/fonts/local"
EndSection

Section "InputDevice"
    # generated from default
    Identifier     "Mouse0"
    Driver         "mouse"
    Option         "Protocol" "auto"
    Option         "Device" "/dev/psaux"
    Option         "Emulate3Buttons" "no"
    Option         "ZAxisMapping" "4 5"
EndSection

Section "InputDevice"
    # generated from default
    Identifier     "Keyboard0"
    Driver         "kbd"
EndSection


Section "Monitor"
    # HorizSync source: edid, VertRefresh source: edid
    Identifier     "Monitor0"
    VendorName     "Unknown"
    ModelName      "Acer G235H"
    HorizSync       30.0 - 83.0
    VertRefresh     56.0 - 75.0
    Option         "DPMS"
EndSection

Section "Device"
    Identifier     "Device0"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce GTS 450"
EndSection

Section "Screen"
    Identifier     "Screen0"
    Device         "Device0"
    Monitor        "Monitor0"
    DefaultDepth    24
    Option         "Stereo" "0"
    Option         "nvidiaXineramaInfoOrder" "CRT-0"
    Option         "TwinViewOrientation" "CRT-1 LeftOf CRT-0"
    Option         "metamodes" "CRT-0: nvidia-auto-select, CRT-1: nvidia-auto-select"
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection

Last edited by DrKillPatient (2012-07-06 19:29:15)

Offline

#2 2012-07-06 02:12:27

brebs
Member
Registered: 2007-04-03
Posts: 3,456

Offline

#3 2012-07-06 16:30:09

Darksoul71
Member
Registered: 2010-04-12
Posts: 319

Re: [SOLVED] Extra resolutions for games with Nvidia drivers

Here is the relevant part of my xorg.conf:

Section "Screen"
    Identifier     "Screen0"
    Device         "Device0"
    Monitor        "Monitor0"
    DefaultDepth    24
    Option         "TwinView" "1"
    Option         "TwinViewXineramaInfoOrder" "CRT-1"
    Option         "metamodes" "CRT-0: 1920x1080 +1280+0, CRT-1: 1280x1024 +0+0;1920x1080,NULL; 1368x768,NULL; 1280x720,NULL"
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection

I run a dual head configuration of a 17" LCD left (1280x1024) and a 21" LCD right (1080p). As you might see the 1080p monitor is used for single head gaming.

Edit: Card is a NVidia 9500GT with propritary NVidia blob.

HTH,
D$

Last edited by Darksoul71 (2012-07-06 16:30:53)


My archlinux x86_64 host:
AMD E350 (2x1.6GHz) / 8GB DDR3 RAM / GeForce 9500GT (passive) / Arch running from 16GB USB Stick

Offline

#4 2012-07-06 19:13:51

DrKillPatient
Member
Registered: 2011-07-28
Posts: 85

Re: [SOLVED] Extra resolutions for games with Nvidia drivers

Thanks. The first link worked, in the sense that my games now have all those resolution options, but now there's a new bug.

To future readers: a solution has been found for this bug as well, see below.

My metamodes setting now reads:

Option         "metamodes" "CRT-0: nvidia-auto-select, CRT-1: nvidia-auto-select; nvidia-auto-select {ViewPortI    n=1920x1080}; nvidia-auto-select {ViewPortIn=1680x1050}; [b]nvidia-auto-select {ViewPortIn=1600x1200};[/b] nvidia-auto-sele    ct {ViewPortIn=1440x900}; nvidia-auto-select {ViewPortIn=1400x1050}; nvidia-auto-select {ViewPortIn=1280x1024}; nvi    dia-auto-select {ViewPortIn=1280x960}; nvidia-auto-select {ViewPortIn=1280x800}; nvidia-auto-select {ViewPortIn=115    2x864}; nvidia-auto-select {ViewPortIn=1024x768}; nvidia-auto-select {ViewPortIn=832x624}; nvidia-auto-select {View    PortIn=800x600}; nvidia-auto-select {ViewPortIn=700x525}; nvidia-auto-select {ViewPortIn=640x480}; nvidia-auto-sele    ct {ViewPortIn=512x384}; nvidia-auto-select {ViewPortIn=400x300}; nvidia-auto-select {ViewPortIn=320x240}

Because I now have included a resolution whose height is 1200 (or so I suppose-- if I remove that part, the issue does not occur), this happens:

Xrandr output:

Screen 0: minimum 8 x 8, current 3600 x 1200, maximum 16384 x 16384

My X screen has the right length, but the wrong height! Now, my desktop seems to span the right area (3600x1080), but if I move my mouse to the bottom of that area, it pans down another 120 pixels. In that area, there's just graphical gibberish, often whatever I had on the screen last time.

If I use Xrandr to set my screens' output, it works again, butthere a solution within the Nvidia driver settings...

EDIT: It occurs to me that the setting seems to be taking the largest possible resolution for the X screen based on those metamodes.

EDIT 2: This is likely intended behavior. The proper virtual resolution (X screen resolution) may be restored by adding

Virtual    3600 1080

to the "Display" subsection under the "Screen" section.

I'll mark this as solved.

Here's my working xorg.conf, by the way. I've posted only the "Screen" section because that's all I've changed. The rest is in my first post.

Section "Screen"
    Identifier     "Screen0"
    Device         "Device0"
    Monitor        "Monitor0"
    DefaultDepth    24
    Option         "Stereo" "0"
    Option         "nvidiaXineramaInfoOrder" "CRT-0"
    Option         "TwinViewOrientation" "CRT-1 LeftOf CRT-0"
    Option         "metamodes" "CRT-0: nvidia-auto-select, CRT-1: nvidia-auto-select; nvidia-auto-select {ViewPortIn=1920x1080}; nvidia-auto-select {ViewPortIn=1680x1050}; nvidia-auto-select {ViewPortIn=1600x1200}; nvidia-auto-select {ViewPortIn=1440x900}; nvidia-auto-select {ViewPortIn=1400x1050}; nvidia-auto-select {ViewPortIn=1280x1024}; nvidia-auto-select {ViewPortIn=1280x960}; nvidia-auto-select {ViewPortIn=1280x800}; nvidia-auto-select {ViewPortIn=1152x864}; nvidia-auto-select {ViewPortIn=1024x768}; nvidia-auto-select {ViewPortIn=832x624}; nvidia-auto-select {ViewPortIn=800x600}; nvidia-auto-select {ViewPortIn=700x525}; nvidia-auto-select {ViewPortIn=640x480}; nvidia-auto-select {ViewPortIn=512x384}; nvidia-auto-select {ViewPortIn=400x300}; nvidia-auto-select {ViewPortIn=320x240}"
    SubSection     "Display"
        Virtual     3600 1080
        Depth       24
    EndSubSection
EndSection

Last edited by DrKillPatient (2012-07-06 19:31:18)

Offline

Board footer

Powered by FluxBB