背景
2月14日,看到Steam for linux 正式版发布的新闻,心情略有激动(如果放在5年前那就是非常激动了),linux也终于摆脱了只能玩玩纸牌、扫雷或者quake这种万年不变的游戏,走进新时代了。
对于Steam不熟悉的朋友可以参考来自wiki的描述[参考1]:
Steam是美国维尔福公司(Valve Corporation)于2003年9月12日推出的电子软件分发、数字版权管理及社交系统,它用于数字软件及游戏的发行销售与后续更新,支持Windows、Mac OS和Linux等操作系统,目前是全球最大的数字游戏平台。
说到Valve,是不是感觉很面熟。当年风靡网吧的CS就是出于它的手中,简评也用到了CS的,这是后话。
由于后面测试游戏性能,在此先公布下主要配置信息:
型号 | Tinkpad W530 |
CPU | Intel Core i7-3720QM |
内存 | 8G DDR3 1600 *2 |
显卡 | Intel HD Graphics 4000(GT2) |
硬盘 | Plextor M5P 256GB |
操作系统1 | Fedora Linux 18 x64 |
操作系统2 | Windows 7 Professional x64 |
下面就进入正题
安装
Steam官方只发布了正式版的deb安装包,而且推荐使用的是Ubuntu系统。这就意味着正式版只能安装在Ubuntu等Debian系的发行版上,而很不巧的是,我是Redhat系的拥护者(很多管理工具用顺手就懒得换了),机器上只有Fedora 18。不过Linux下有个好处就是什么都可以折腾,在尝试了使用deb转rpm工具安装失败后(Fedora文件目录格式和Ubuntu不一致),我搜索到Steam官方提供了其他常用Linux发行版的安装指导[参考2]。
在官方指导下顺利安装了Steam,但是这是beta版,不过Steam自身的更新程序会更新到最新支持版本的。下面给出Fedora 18 下的安装步骤:
- 从http://spot.fedorapeople.org/steam/fedora-18/处下载steam及其依赖组件的rpm安装包,其中SDL2-debuginfo 和 steam的src包不是必须的,子目录下的安装包也不用下载。如果是本机32位系统的话,带X86_64字样的64位安装包也无须下载。
- 管理员权限下 yum localinstall 所有下载的rpm包,安装之。
以上简单两步即可完成。
安装的过程中发现一些有趣的东西:
- Steam使用了SDL作为图形界面库,SDL[参考3]支持绝大部分你能见的用的操作系统。这意味着良好的可移植性和代码的复用度,为Steam for linux的产品质量打下很好的基础。
- Steam除使用SDL1.2这个稳定版本外,同时使用了SDL2。SDL2比SDL新增许多特性如:完整的3D硬件加速,OpenGL3.0+的支持,多窗口、多屏幕的支持等。但是SDL2还处于开发阶段,所以虽然会带来性能上的提升,但也会影响稳定性。
- Steam依赖于Wayland,Wayland[参考4]是近些年提出的,用于替代传统X window的图形层协议。我在查看Steam进程的时候发现其并未链接Wayland库,考虑到Wayland还未被名大发行版用作默认图形系统。这也许是Steam为以后的平滑升级做的准备。感兴趣的朋友可以参考/参与Steam的论坛上网友对此做的讨论[参考5]。
安装的事情叙述完毕,接下来
使用
Steam第一次运行的时候,会到服务器上更新,静等完成即可进入初始的登陆界面。

登录界面与windows平台下无异。但这时bug出现了,文本框不能输入任何字符,最后用右键菜单的复制粘贴搞定。初步估计是输入法或者键盘布局和Steam冲突造成的,进一步讨论可关注Steam讨论贴”ubuntu12.10 x64 STEAM无法输入账号密码”[参考6]。
登录成功后,进入主界面

主界面也与windows下一致,不过库标签里面多了Linux游戏分类,里面是Linux平台下可以运行的游戏列表。另外在主界面任何地方都不能输入字符,好友界面也一样。
关于页面可以看到Steam版本信息

刚才在主界面看到Linux已经支持了CS 和 CS:Source等游戏,下面就体验下CS:Source。首先要下载安装游戏,完毕之后就可以进入了。

游戏载入完成之后,傻眼了,这CS主界面上的菜单怎么都没了,而且Steam的快捷键也不能用。我按着记忆中菜单的位置点了下,一个熟悉的窗口蹦了出来

于是恍然大悟:中文无法显示。搜索无果,只好在Steam的游戏属性当中,把这款游戏的语言更改成英文,进入

文字和Steam快捷键都可以正常使用了,这次截图就是使用Steam的F12快捷键,而不是上面两个截图的Alt+PrtScr。Linux版本的CS:Source相比Windows下少了一些菜单,例如测试图形性能的,那我们就进入游戏里面测试吧。


选择了沙2地图,调整好图形设置,全屏分辨率1920*1080


通道里对比
其他地方就不一一列举。和windows相比linux下cs:source有以下值得注意的地方:
- 默认图形配置不同:Windows 的推荐图形配置要比Linux下高一些。
- 相同配置下图形质量基本相同:从上面截图上看不出质量差异。
- 相同配置下windows要比linux游戏性能好很多,从帧数上看到Windows下性能是Linux下的1.6至1.7倍。不过Linux 40-60帧的速度还是比较流畅的,如果调整成推荐配置,平均会提高30帧。这个性能问题和显卡驱动有关,也和整个游戏的生态环境同样亦相关。
- Linux下偶尔会出现渲染错误,图像撕裂等现象,影响了娱乐性。
总体来说:虽然Steam for Linux 及其平台下的游戏仍有很多bug,但这是Linux娱乐环境的重大进步,有了Steam,我也可以很方便的在工作之余,虐一把电脑,放松心情了。
参考资料
- Steam for linux 发布新闻: http://store.steampowered.com/news/9943/
- Steam for linux 各发行版安装指导: https://developer.valvesoftware.com/wiki/Steam_under_Linux#Native_Steam_on_Linux
- SDL介绍: http://wiki.libsdl.org/moin.cgi/Introduction
- Wayland官网: http://wayland.freedesktop.org/
- 讨论贴 “steam with wayland is real?”: http://steamcommunity.com/app/221410/discussions/0/846938351044525469/
- 讨论贴 “ubuntu12.10 x64 STEAM无法输入账号密码”: http://steamcommunity.com/app/221410/discussions/0/864958088411422085/
50 Responses to Steam for Linux 简评