这里有很多关于如何让 Unity 3D 与 NVidia 显卡协同工作的问题 - 我已经阅读了很多,但我仍然无法找到解决我的问题的方法。
我的设置
我最近在我的华硕 N53SN 上安装了 Ubuntu 12.04,它配备了 NVidia GeForce 550M 以及集成的英特尔卡(参见全规格在 ASUS 网站上)。现在我在使用 Unity 3D 时遇到了一些问题。我从来没有尝试在 Ubuntu 11.10 上修复它,因为我本来就打算升级到 12.04,并希望它到时候能正常工作。但事实并非如此......
我的问题
当我登录 Ubuntu 时,我选择“Ubuntu”作为我的桌面环境(“Ubuntu 2D”也可用)。然而,我尝试过的每一个诊断说无论如何我都在使用 Unity 2D。
尝试的解决方案
我已经尝试过unity --reset
,它似乎已经为其他人解决了这个问题,并得到了以下输出(unity --replace
给出完全相同的结果,除了前两行):
WARNING: Unity currently default profile, so switching to metacity while resetting the values
/home/tomas/.gtkrc-2.0:3: error: unexpected character `;', expected character `}'
unity-panel-service: no process found
Checking if settings need to be migrated ...no
Checking if internal files need to be migrated ...no
Backend : gconf
Integration : true
Profile : unity
Adding plugins
Initializing core options...done
Initializing composite options...done
Xlib: extension "GLX" missing on display ":0.0".
Xlib: extension "GLX" missing on display ":0.0".
Xlib: extension "GLX" missing on display ":0.0".
Segmentation fault (core dumped)
然后,我进入了一个没有窗口边框的桌面环境,无法调整窗口大小,并且Ctrl++不再能打开终端。幸运的是,仍然可以打开 Guake 终端,我可以确认我仍然在 Unity 2D 中 - 只是,显然,它坏了。AlttF12
我该怎么做才能使 Unity 3D 正常运行?
答案1
您遇到的问题是因为您的系统中有混合图形,而 Linux 目前对混合图形的支持还不够好。您可以尝试以下几种方法:
-卸载您的 nvidia 驱动程序(这将强制您的系统使用英特尔集成显卡,允许您登录 Unity 3D)
-安装大黄蜂https://launchpad.net/~bumblebee/+archive/stable(这将使您的系统使用英特尔显卡,但它也会在不使用时关闭您的 nvidia 卡,以节省电池寿命。您也可以在运行某些程序之前输入“optirun”以这种方式使用您的 nvidia 卡。)
我推荐第二种方法,但我建议阅读https://github.com/Bumblebee-Project/Bumblebee/wiki在安装之前。