分类: LINUX
2008-04-22 21:45:19
7.1使用启动脚本(使用之前确保游戏能够正常运行)
再使用单独得X server时,很多游戏一般都可以发挥出他们最佳性能。wine不需要窗口管理器(GNOME或KDE)就可以正常地运行,所以如果你在一个单独的X server下运行游戏,你会得到明显的性能提升。在运行游戏之前,关闭GDM或KDM,还会得到更大的性能提升(只能通过控制(console)台来实现)。
a、首先,在终端下建立一个脚本
nano launcher.sh(可以用vim替换nano)
b、复制下面的文字到终端里。如果你没有nVidia的显卡,就删除nvidia settings的那部分,然后用你的游戏的正确路径替换里面的路径
#!/bin/sh
#uncomment if launching from console session
#sudo /etc/init.d/gdm stop
#KDE use this instead
#sudo /etc/init.d/kdm stop
# Launches a new X session on display 3. If you don't have an Nvidia card
# take out the "& nvidia-settings --load-config-only" part
X :3 -ac & nvidia-settings --load-config-only
# Goto game dir (modify as needed)
cd "$HOME/.wine/drive_c/Program Files/Game/Directory/"
# Forces the system to have a break for 2 seconds, X doesn't launch instantly
sleep 2
# Launches game (modify as needed)
DISPLAY=:3 WINEDEBUG=-all wine "C:/Program Files/Game/Directory/game.exe"
c、把文件保存到你的主文件夹(保存Ctrl+O,退出Ctrl+X。Vim的话先Esc,再Shift+:,保存w,退出q)
d、然后,给你的脚本加上可执行属性
chmod +x ~/launcher.sh
e、运行脚本
sh launcher.sh
或
./launcher.sh
f.结束游戏后,用CTRL-ALT-BACKSPACE回到桌面
第二种方法
如果你的游戏不能运行或者只是单纯想压榨出更好的游戏性能,跟着下面的步骤尝试在关闭X session的情况下运行游戏。
a、取消注销“sudo /etc/init.d/gdm stop”语句(删除#)后保存,如果你是使用KDE,就取消注销“sudo /etc/init.d/kdm stop”。
b、关闭所有程序,按CTRL-ALT-F1打开控制台
c、在控制台登陆并运行这个脚本。你会被要求输入密码,然后游戏会在它自己的X session里运行,而没有GDM或KDM的妨碍。
d、如果脚本显示你没有启动X session的权限,就修改那个脚本
按照这样修改X server的启动语句
sudo X :3 -ac & nvidia-settings --load-config-only
注意:为了避免修改脚本,你可以修改Xwrapper.config给与一般用户启动X的权限。用sudo vim打开/etc/X11/Xwrapper.config,把allowed_users=console修改为allowed_users=anybody。
e、结束游戏后,可以重启或CTRL-ALT-BACKSPACE回到控制台,重新启动X和桌面:
sudo /etc/init.d/gdm start
如果是KDE
sudo /etc/init.d/kdm start
桌面会很快出现,还不行的话就输入
startx
注意:
a、如果让游戏使用它自己的X session,确认禁止winecfg里的virtual desktop。
b、让游戏使用它自己的X session可以解决在游戏时键盘无法输入的问题。