Intel + NVIDIA dual-graphics 3D Game configuration in Archlinux (dota2 @ steam)
In the post bar, I asked this question about what I did after I woke up at noon. After playing dota2 in the afternoon, I felt that the smoothness was quite good. I wrote something to record it. Archlinux generally uses search engines, so you only need to pay attention to them.
1. The OpenGL library that comes with steam is outdated. Running may complain about "Cannot find OpenGL GX" and other things. Check the ArchWiki "steam" entry and delete several built-in steam libraries.
2. However, after deleting those libraries that come with steam, you need to install the new version of the database in the system, except for the 64-bit database (it is impossible for someone to use a 32-bit system ), check if there are "lib32-mesa" and "lib32-mesa-libgl", the lib32 dual graphics card also needs to install "lib32-intel-dri", don't ask why, if not installed will be very card, "primusrun" will not sound failure, "optirun" will prompt something like "cannot find opengl entry point xxxx.
3For NVIDIA drivers, install nvidia instead of nouveau, and install nvidia-utils and lib32-nvidia-utils 」. However, "bumblebee" may have dependency conflicts during installation. Check the "bumblebee" entry in ArchWiki, install intel-dri, xf86-video-intel, bumblebee, and nvidia to avoid dependency conflicts.
4. "Bumblebee" is used to switch the exclusive display to run a program, but "startx" still uses Intel Core graphics card to enter the desktop environment, so do not generate "xorg. conf. If your system has any valid "xorg. conf, whether in "/etc/X11" or in the main directory, delete it or change it to a name that will not be detected. Otherwise, you may not be able to start X11. Of course, you must configure bumblebee. "optirun glxgears-info" to check whether there is any output of "NVIDIA". If it is output, it is configured.
5. Dota2 cannot run with "optirun". Install the "primus" package and run with "primusrun". Of course, it is too frustrating not to run dota2 on a virtual terminal. Right-click dota2 in steam and choose "set lunach options" in "Properties... enter "vblank_mode = 0 primusrun % command %" in it. Of course, this is the Global server, if you are playing the perfect world proxy, enter "vblank_mode = 0 primusrun % command %-language schinese-international-perfectworld 」.
6. If you are using an open-source driver, switch the N-card driver from nouveau to nvidia and then generate a new kernel image to see "/etc/mkinitcpio. conf "comment out all nouveau modules, and then" sudomkinitcpio-p linux ". After the restart, check the" dmesg "information to see if there is any" nouveau "or" nvidia "information, it should be because the former does not have the latter.
7. This is not important. Many people on the network say that the NVIDIA driver should disable kms, but we use dual-graphics cards. We can switch the graphics card manually only when 3D is run, we usually use Intel Core graphics cards, so we do not need to add the "nomodeset" parameter to disable kms.
8. By the way, it is not a BUG feature. The dota2 running perfect proxy on steam cannot be full screen at the beginning, and the video bar in the upper left corner can be changed to "full screen, in the past, it seems like a thing like "no window". The game screen will be covered by the Xfce4 panel, which hurts a lot.
This is basically the case. It is mainly written in ArchWiki that is vague or not mentioned but very important. If you have this requirement, you 'd better refer to the following entries in ArchWiki: "steam", "bumblebee", and "nvidia 」.
The following is the package I installed. If there is any problem, check if there is something missing.
------------------------------------------------------------~ » pacman -Qqs '(nvidia|intel|mesa)' ispeller@SHELL-LABbumblebeegluintel-driintel-tbblib32-glulib32-intel-drilib32-libtxc_dxtnlib32-libvdpaulib32-mesalib32-mesa-libgllib32-nvidia-utilslibcllibtxc_dxtnlibvdpaumesamesa-demosmesa-libglnvidianvidia-utilsxf86-video-intel------------------------------------------------------------~ »
In this case, I wish you a pleasant stay ~