我应该如何正确设置 CCSM、Xorg.conf 和 nvidia-settings 以进行全屏游戏?

我应该如何正确设置 CCSM、Xorg.conf 和 nvidia-settings 以进行全屏游戏?

下午好,我是 Ubuntu 的新用户,我需要一些帮助来正确设置我的 GPU 卡。我对此真的很困惑,我已经阅读了很多关于如何配置 Nvidia 卡的文章,但我无法解决与 Compiz、Nvidia、基准测试工具glxgears(嗯,大多数 Linux 用户声称它不是一个真正的基准测试工具)和全屏游戏性能。所以我只希望有人能帮我设置它

这里,一些文件的配置方式(仅恢复):

Xorg.conf

Section "Monitor"
  Identifier     "Monitor0"
  VendorName     "Unknown"
  ModelName      "Unknown"
  HorizSync       28.0 - 33.0
  VertRefresh     43.0 - 72.0
  Option         "DPMS" 
EndSection

Section "Device"
  Identifier     "Device0"
  Driver         "nvidia"
  VendorName     "NVIDIA Corporation"
  Boardname      "GeForce 8400M GS"
  Option           "NoLogo"                 "True"
  Option           "NoFlip"                 "False"
  Option           "RenderAccel"            "True"
  Option         "AddARGBLXVisuals"     "True"
  Option         "AllowGLXWithComposite"  "True"
  Option           "DynamicTwinView"        "False"
  Option         "TripleBuffer"         "True"
  Option           "TwinView"               "False"
  Option         "FlatPanelProperties"  "Scaling = Native"
  Option           "RegistryDwords"         "PerfLevelSrc=0x2222; PowerMizerEnable=0x1; PowerMizerLevel=0x3; PowerMizerLevelAC=0x1"
EndSection

Section "Extensions"
  Option         "Composite"        "Enable" 
EndSection

Section "Screen"
  Identifier     "Screen0"
  Device         "Device0"
  Monitor        "Monitor0"
  DefaultDepth    24
  SubSection     "Display"
      Depth       24
  EndSubSection 
EndSection

nvidia-sttings

# Attributes:

AS5720G:0.0/SyncToVBlank=1
AS5720G:0.0/LogAniso=0 
AS5720G:0.0/FSAA=0 
AS5720G:0.0/TextureSharpen=0
AS5720G:0.0/TextureClamping=0 
AS5720G:0.0/AllowFlipping=1
AS5720G:0.0/FSAAAppControlled=1 
AS5720G:0.0/LogAnisoAppControlled=1
AS5720G:0.0/OpenGLImageSettings=3 
AS5720G:0.0/FSAAAppEnhanced=0
AS5720G:0.0/DigitalVibrance[DFP-0]=0
AS5720G:0.0/GPUScaling[DFP-0]=65538 
AS5720G:0.0/ColorSpace[DFP-0]=0
AS5720G:0.0/ColorRange[DFP-0]=0 
AS5720G:0.0/XVideoTextureBrightness=0
AS5720G:0.0/XVideoTextureContrast=0 
AS5720G:0.0/XVideoTextureHue=0
AS5720G:0.0/XVideoTextureSaturation=0
AS5720G:0.0/XVideoTextureSyncToVBlank=1
AS5720G:0.0/XVideoSyncToDisplay=65536

CompizConfg - Unity profile

[composite]
s0_slow_animations_key = Disabled
s0_detect_refresh_rate = true
s0_refresh_rate = 60
s0_unredirect_fullscreen_windows = true
s0_unredirect_match = (any) & !(class=Totem) & !(class=MPlayer) & !(class=Vlc) & >     !(class=Plugin-container) & !(class=Firefox)
s0_force_independent_output_painting = false

[opengl]
s0_texture_filter = 1
s0_lighting = false
s0_sync_to_vblank = true
s0_texture_compression = false
s0_unredirect_driver_blacklist = (nouveau|Intel).*Mesa (8.0|9.0)

以下是一些系统详细信息:

OS: Ubuntu 12.04.1 LTS, Unity 3D
Kernel: 3.2.0.37
CPU: Intel Core2Duo T7100
GPU: Nvidia Geforce 8400M GS

这是 glxgears 问题:

  1. 当前设置了上述所有更改后,glxgears 的刷新率(大约每秒 60 帧)无论是窗口模式还是全屏模式,都受到限制,但齿轮的移动方式有点像滞后的迟缓

  2. 如果禁用“同步到 vblank”在 中CCSM,glxgears 的刷新率在窗口模式和全屏模式下均受到限制。Gears 运行流畅、完美,但有一点撕裂全屏显示,就在中间。

  3. 如果禁用“同步到 vblank”在 OpenGL 中Nvidia-Settings,glxgears 不受刷新率限制,无论是窗口模式还是全屏模式(180 - 200 fps 之间)。当齿轮在窗口模式下移动时,齿轮移动非常顺畅、完美无瑕且不会撕裂,但它们滞后的迟缓全屏(我猜是由于合成。刷新率为 200 fps 或每 5 秒 1000 帧)。

  4. 如果禁用“同步到 vblank”CCSM和 OpenGL中Nvidia-Settings,glxgears 不受刷新率限制(2050 - 180 fps 之间)。齿轮移动平稳,但撕裂

大多数 Nvidia 和 Ubuntu 用户建议同时打开“同步到 vblank”并忽略 glxgears 性能,但我不知道是否应该这么做。

最后,关于全屏游戏,我检查了 CCSM 中的“同步到垂直空白”不会影响其性能,但 Nvidia 设置中的 OpenGL“同步到垂直空白”会影响其性能。游戏存在一些撕裂问题,而且一点也不流畅,即使帧数限制为 60fps。我真的很期待摆脱这种流泪

答案1

将抗锯齿和各向异性功能更改为“覆盖应用程序设置”。

相关内容