显卡还是 N 卡好啊
新来了个同事,用 Linux 做桌面的。这样也好,可以节省一套 Windows 的费用。买组装机即可,同样价钱可以比 DELL 的配置好上许多。
昨天装的机器,一开始遇到点小麻烦,Ubuntu 7.10 对板载网卡 RTL8111/8168B 支持有问题。显示是安装一切正常,但是就是网络不通。ip 包发出去似乎就消失了,收不到回应。奇怪的是,Ubuntu 7.04 下却一切正常。google 上没有找到解决方案,也懒得细查,抽屉里翻出块更老的网卡装上。btw, 上次装 Solaris 10 ,这块板载网卡也是不认的。
接下来是显卡的问题,板载的 Intel 945 的显式芯片,按道理 3d 性能还是不错的。可惜 3d 这部分,一半靠硬件,一半靠软件(驱动)。怎么折腾都没找到 Ubuntu 下的对应驱动。
在 Intel 的官方搜索 倒是找到一些似乎是提供给 Linux 的驱动,可那些是供 Red Hat 用的。Ubuntu 系统默认安装的是 Mesa 的 GL 驱动,对于现代 3d engine 来说,基本上啥都没实现(连 S3TC 压缩贴图的扩展都没有)。
这让我无限怀念 N 卡。
不说别的,就说人家 N 卡的人做软件的态度。各种平台的驱动一应具全。freeBSD 下,N 卡官方提供的驱动几乎是唯一完美支持 openGL 的。连 ports 里都是单独一支:放在 /usr/ports/x11/nvidia-driver 下。而别的厂商的显卡驱动则均无官方版本,挤在 /usr/ports/x11-drivers 里面。
A 卡则次点,不过还好,除了 Windows 驱动外,倒是给出了 linux 版的。不过我老是觉得 ati 被 amd 收购后,越来越不思进取了。市场份额越来越小。
我们维护 3d engine 部分的同事对比两类显卡的驱动,举了个很有力的例子用来说明开发人员会更喜爱哪家公司:
A 卡每次发布新版驱动,都会在更新文档里列出,我们这次更新修复了哪些游戏中因驱动引起的 bug ;而 N 卡发布驱动新版本,更新文档则是列出针对哪个接口做了怎样的改进或修正。
嗯,我就不谈 Intel 的卡了,虽然它的市场占有率也不低。可恨的是,Intel 可以为 Mac OS 做出漂亮的驱动来,就是不给开源社区贡献一点东西。原本把 Intel 和 AMD 相比的时候,我还有无限好感(来源于我们可以免费从 Intel 开发网站上免费索取到详尽的开发文档,并在一周内从美国快递过来);在显卡驱动这块,好感立刻减了一半。
如果你是一个 3d 游戏开发人员,请选购 N 卡吧,因为它对开发人员的诚意。
如果你是一个 3d 游戏玩家,也请选购 N 卡,因为为你开发游戏的程序员都喜欢它。
Comments
感觉A卡挺好的,驱动也没啥不好的,两家都别妖魔化了。
Posted by: Anonymous | (43) August 10, 2010 07:48 PM
对图形来说N卡兼容性比A卡好
Posted by: 5zero | (42) March 4, 2010 12:19 PM
我也在带一个团队,不过开发的是第三方品台的软件,面临计算机的购买选择,感觉直接买dell要省很多事情:
对于公司而言,成本比兼容机高不了多少,最重要是,dell给开增值税发票
同一型号跨度1年配置也一样,维护方便
Posted by: Anonymous | (41) April 12, 2008 09:39 PM
通过sudo apt-get install xserver-xorg-video-intel是可以将945的显卡驱动装好的!
Posted by: AFu | (40) March 20, 2008 08:29 AM
A卡的颜色与效果好。
N卡只有FPS可能会高些
比较郁闷的是,WOW中这个现象特别明显
Posted by: lbaby | (39) March 13, 2008 02:24 PM
Anonymous关于shader的一段话比较中肯的说
Posted by: Genesis | (38) March 12, 2008 10:36 PM
D3D的成功是有他的道理的,GL自1.4来就在开始变成D3D标准后面的跟屁虫了,事实上,同一档次的A卡的效果与效率比N卡有过之无及不及,N卡比A卡强的地方,就是通用性与易用性比A卡高。
Posted by: Genesis | (37) March 12, 2008 10:34 PM
战神等一些PS2游戏由于PS2用linux衍生操作系统,因此可能是用OPENGL,当然也不排除他自己搞一套的可能性
----------------
PS有自己的商業游戲開發工具,好像還是收購來的。但據說自己在PS3上裝Linux無法訪問其3D顯示硬件加速設備,只有命令行輸出。
Posted by: aaaa | (36) March 11, 2008 06:08 PM
最终幻想7是出过PC版的(连8也有过),相当的挑显卡,当时据说只有VOODOO和部分可跑,正版售价2xx元,盗版也要60(4CD,十几块一张)
战神等一些PS2游戏由于PS2用linux衍生操作系统,因此可能是用OPENGL,当然也不排除他自己搞一套的可能性
厉害的是Capcom,在PS2,PS3上都有跨平台引擎,比如鬼武者,鬼泣3都有PC版本,而最新的引擎是可以跨xbox360和ps3的,如失落的星球、鬼泣4等等
在现在的游戏机厂商中由于越来越多考虑跨多机种的问题,所以引擎问题也越来越严重
Posted by: xtypebee | (35) March 11, 2008 01:30 PM
现代的 3d engine, 图形效果方面主要还是靠写 shader 。
--------------------------
图形效果的本质是算法,而shader只是算法的一部分,如果您这里的shader只得仅仅是在gpu上跑的一段代码,那这个结论就下得有点肤浅。个人认为对于游戏来说,图形效果取决于1. shading算法和引擎架构 2.相关工具和美术制作水平。
为什么引擎架构和shading算法是同等地位?因为很多时候尽管程序员了解某种shading的优点,可集成到引擎中涉及的改动太大,甚至会破会架构的严密性,最终不得不放弃。比如halo 3,lightmap存的不是luminance而是sh系数, 然后如何用这些sh系数大家都可能大概了解。可以想象一下要集成到现有的一个仅支持传统lightmap的引擎中,工作量又多大。
其次是美术和场景编辑,可能日系的游戏更重视这个。不过欧美也有画面效果过分依赖场景编辑的例子(例子还是halo 3)
Posted by: kypck | (34) March 2, 2008 10:53 AM
我个人主持的项目做跨平台是为了项目本身的质量,个人相信,在没有特别好的标准衡量工程整体质量时,能否跨平台可以权做一个标准。
----------------------------------
有一定道理,不过我认为这个衡量仅仅限于代码角度,对于游戏来说,工程质量的范畴远比代码广。
Posted by: kypck | (33) March 2, 2008 10:23 AM
AMD收購ATI之后,開源動作比以前好很多吶。雖然其Linux下的驅動目前還比不上N家,但其開放了一系列圖形芯片技術文檔給Xorg組織。A家未來的開源驅動很令人期待吶。
http://developers.solidot.org/article.pl?sid=08/02/24/0712222
Posted by: aaaa | (32) March 1, 2008 09:41 PM
云风大哥啊,天下贰的登陆程序出大问题啦,你帮分析分析啊。
Posted by: Anonymous | (31) March 1, 2008 07:05 PM
我对跨平台的个人看法(不推荐):
不刻意花精力去做。
不为跨平台而跨平台。
我个人主持的项目做跨平台是为了项目本身的质量,个人相信,在没有特别好的标准衡量工程整体质量时,能否跨平台可以权做一个标准。
我们的项目主要是 port 到 windows 上(因为是网游), 开发人员喜欢用非 windows 环境做开发,那是个人的喜好。而且对公司也节省了一定的成本:不用购买 Windows 和 Windows 下的开发工具。
Posted by: Cloud
| (30)
February 29, 2008 04:08 PM
接着说,
总体上的看法就是游戏中研究和制作越来越独立, 研究是为了提供制作方法,具体地说是为了提供更便利的工具, 好的工具平台的作用越来越大.
游戏是实时性表现的, 类比, 影视动画是非实时表现, 影视制作的圈子里面有了太多成熟制作的工具, 从模型制作, 动画到后期, 正是因为有了工具上便利, 制作人更容易进入到纯粹的创造中, 影视制作才有了今天的成熟度.我觉得影视业就是游戏业的一个范本吧.
Posted by: Anonymous | (29) February 29, 2008 01:10 PM
大概是我把这篇文章的评论引偏了, 本来是讨论显卡的, 我不合时宜地联想起了各种平台之争, 其实是想了解一下云风对"流行就是好的"或是"纯粹才是好的"看法.
个人来说, 我觉得现代游戏的开发难度越来越大,为了讨好玩家, 别的游戏能实现的, 自己的游戏最好也实现,但超越又谈何容易, 游戏越来越多是利用别人的平台, 购买成熟的游戏组件(谁又知道可不可靠呢), 尽管整合性现在的形势仍很乱, 但这也是趋势了.
前面你举过很多日式游戏的例子, 他们出精品游戏可是为了好的移植性(尽管这越来越需要考虑)? 也许他们一直在PS平台上非常熟悉积沾,有了平台上非常丰富的经验罢了.
个人较在意的是游戏编辑和界面交互这些上层内容, 一个为了强化内容制作, 一个为了增强用户体验.
Posted by: Anonymous | (28) February 29, 2008 12:57 PM
Cloud,不好意思,不是我有意争论,我们还是在讨论3d,没错吧?
我的意思是没有必要吧时间浪费在平台的选择和比较上,毕竟你也做了几年技术了。我第一次在xwindow上跑ogl程序,再用些诸如nv_register_combiner之类的扩展,实现了等同于当时d3d的功能,那时的确很激动,但现在有了hlsl(不是MS HLSL),你难道真的觉得“难搞定的是Shader 语言的差异”?难道几个关键字的差别就能让你得出glsl > cg > ms hlsl的结论?另外,我估计你没有看过某些spec,特别是给hw设计者看的spec,严谨和远瞻性在这上面才可以得到体现,API和shader language spec? 我认为只有在需要用到它们时才有必要去看。 如果你读过这些spec,或者稍微了解一点这些spec是何时由谁制定的,我收回我说的话。
关于平台稳定性健壮性的问题,我始终说的都是3d部分,或许你在linux上碰到些问题(特别是和ogl扩展有关时),或者被“在win上打开debug runtime就能查出的低级错误”耽误1个小时,才能体会到些什么。不过也有可能nv的driver在任何时候都给你面子,况且这种情况也在IHV的努力下改变。
关于稳定性全方面的比较,我觉得我不够资格给出结论。或许你有,但那仅限于你的个人意见。
Posted by: kypck | (27) February 29, 2008 10:09 AM
是不是要做游戏机上的游戏了?
Posted by: lk | (26) February 29, 2008 09:55 AM
似乎又看到了C++/C之争的影子.其实关于平台之争也可以用C++/C之争的观点来诠释.就是OS系统的定位不一样.Windows定位于大众,兼顾于各种应用需求和开发所以必须有些方面要折中(C++).某些OS是专有或或者比较专有平台,所以有更快的反应速度(包括针对开发人员的建议)和更集中的优化某些的处理(类似某种语言特有的语法糖)(C,Lisp,脚本)
所以针对不同的应用每个人心中都有标准,永远都不能争出结果.但是,谁都不能否认Windows在大众市场的占有率.
btw 云风认为自己的游戏或engine是阳春白雪,只给懂的人,欣赏的人慢慢品位.显然Windows大都是下里巴人用的.云风是否因为这个看不起Windows了呢(主观因素往往大于技术等客观因素).如果云风是CEO,我想网易新的游戏就不会推出Windows版了.呵呵,云风大哥,对吗?
Posted by: Rain | (25) February 29, 2008 09:33 AM
但也相信你在技术上的嗅觉,
由此你如果能推动在其它平台上的游戏开发, 这种前景也是挺好的, 毕竟我们困在WINDOWS上太久了.
Posted by: Anonymous | (24) February 28, 2008 11:52 PM
现代的 3d engine, 图形效果方面主要还是靠写 shader 。
由于硬件的差异,我们不可能像早期那样直接对各种显卡做 GPU 的汇编级控制了。所以必须有一套方便的跨平台(指跨不同显卡厂商)的 shader 语言。
从制定的规范方面,openGL 的 GLSL 要严谨且有远瞻性的多。而 D3D 的 HLSL 或是 NVidia 的 CG 则感觉差了一些。
3d api 的差异性(d3d/ogl ?)其实很容易搞定,难搞定的是 Shader 语言的差异(靠开发人员人力去堆?)。
Windows 真的适合游戏?回顾一下自己最近玩过的 10 款游戏,数数有几款是 Windows 专有版;或是 Windows 版的感觉超过其它平台版的。
可以降低标准说 Windows 适合跑游戏,但它不比别的平台更适合。
Windows 的不稳定和不健壮,是设计本身决定的,不是由于“测试压力和范围不一样”。
你可以说 Windows 一些不稳定因素是由不合格的驱动程序或不合格的应用程序导致的,但允许这些因素导致系统崩溃,就是操作系统设计的责任了。别的 OS 做的或许也不完美,但大多比 Windows 强。
btw, 网游现在面临的广泛的木马盗号问题,Windows 本身设计有脱不开的干系。
Posted by: Cloud
| (23)
February 28, 2008 11:24 PM
如果不做网游,使用OGL无疑是最好的选择;如果纯粹做游戏引擎,OGL也是最好的选择;如果要做最前沿的3D引擎,DX是个更简单的方式。
其实要写跨平台的3D引擎,DX、OGL并用最好,毕竟虽然看起来一大堆API,实际上我想很多商业3D游戏,用到图形库的API可能不到100个。
Posted by: Zwinger | (22) February 28, 2008 09:56 PM
对于下面某些平台之争,我认为没有一个人的理由能站住脚,当然包括楼主的。搞3d的人,无非两种,researcher和游戏相关的开发,前者不在乎平台,他们可以没有用过windows或linux,后者中有很多人追求全平台或叛逆,有自己的坚持(比如只在linux下做),这很好也很正常。
但没有任何事实(至少这里的人没能给出)能够得出“Windows 至今不是个适合游戏的平台”的结论。拿几款精心挑选的 自己喜欢的游戏来做例子只能引起口水战。
btw, M$现在主导着3d硬件spec的制定,个人认为在调试工具和系统软件(DDI,runtime,driver verification等)的稳定/健壮性上比其他平台更好一些。别拿mac/linux“不”蓝屏说事,测试压力和范围不一样,得出的结论当然不一样。
Posted by: kypck | (21) February 28, 2008 08:42 PM
“如果你是一个 3d 游戏玩家,也请选购 N 卡”
同意,目前来说,n卡在游戏中的性价比非常不错,特别是中高端(从8600GTS/9600GT 到 8800GT)
“如果你是一个 3d 游戏开发人员,请选购 N 卡吧”
不认同。我们在讨论3d不是吗?ati硬件设计有些地方还是可圈可点的,搞3d的同学们多少会对一些特别feature感兴趣吧?如果是,那么就没必要nvida only.
Posted by: kypck | (20) February 28, 2008 08:17 PM
想问一下,xbox360的游戏在什么平台下开发?
Posted by: nothanks | (19) February 28, 2008 02:55 PM
我最近玩过的感觉不错的 3d 游戏,最终幻想 7 ,战神,都没有 windows 版。
最近几年曾玩的比较多的 PC 版 3d 游戏,魔兽世界,我的几个同事是在 Mac OS 上跑的。
可见,好的 3d 游戏几乎都不是 Windows 专享,甚至不出 Windows 版。
Windows 至今不是个适合游戏的平台,游戏开发人员何必在上面吊死。
Posted by: Cloud
| (18)
February 28, 2008 01:03 PM
因为实际上说来, 你认为你开发的引擎,比如说只是在表现力上, 超越unreal, cryEngine的可能性有多大, 或是要用多大的精力时间? 如果只是把这部分精力放在提高人机界面上面, 给美术策划用的编辑工具上, 又会有多大的提高, (似乎很多工程师对界面交互不屑, 但个人觉得这是一个大学问)
Posted by: Anonymous | (17) February 28, 2008 12:35 PM
如果是技术上的原因, 比如说追求一切的可控性(操作系统,引擎, 脚本语言), 最终可能会发觉面对的问题的复杂性越来越难以控制.
Posted by: Anonymous | (16) February 28, 2008 12:19 PM
应该是这样.
如果你是一个 3d 游戏玩家,请选购 windows吧,好玩的3D游戏都在这上面。
如果你是一个 3d 游戏开发人员,也请选购 windows吧,因为你的玩家都用它。
我觉得服务端无所谓, 何必自己折腾非得把客户端跨平台,优化3D程序很多就是平台相关的.
Posted by: Anonymous | (15) February 28, 2008 12:15 PM
谁说开发人员都喜欢 windows 的?
我们这里好多人坚决不装 windows
我想这个世界上开发 3d 程序(包括 3d 游戏)的程序员很多不在 windows 上。
intel 集成显卡的问题今天弄明白了,不是驱动问题,是硬件本身支持的不够。intel 的显卡驱动,openGL 部分偷了点懒,直接用的 mesa 的,实现的其实还成。看硬件参数,至少要到 965 才能算块象样的 3d 显卡了。
btw, windows 对开发人员可是不够诚意的哟 :) 至少没有 open source 的 OS 有诚意。
Posted by: Cloud
| (14)
February 27, 2008 11:14 PM
还有一个
如果你是一个 3d 游戏开发人员,请选购 windows吧,因为它对开发人员的诚意。
如果你是一个 3d 游戏玩家,也请选购 windows吧,因为为你开发游戏的程序员都喜欢它。
Posted by: Xiaofeng | (13) February 27, 2008 08:31 PM
装得这么麻烦还装干嘛
Posted by: Anonymous | (12) February 27, 2008 08:30 PM
Intel集成显卡的驱动应该可以在xorg支持大部分3d api的,不过945G的芯片在xorg下好像默认使用的是i810作为驱动的,这个是xorg提供的,3d api支持不全,Intel自己提供的驱动名字就叫intel,这个全,apt安装一下xserver-xorg-video-intel就可以了。对于硬件厂商在开源领域的作为,Intel应该算是典范了,他们的硬件都有自己开发人员直接参与开源社区并提供驱动,硬件spec文档也都很全很规范,而nvidia和ATI则死都不敢发布开源的驱动,文档也是遮遮掩掩,不同点是nv发布官方二进制驱动比较快和勤奋一点而已,ATI口头决心往往比实际行动大。装nv和ATI的驱动都要加装restrict类的包,非源代码分发。
Posted by: dawnh | (11) February 27, 2008 12:28 AM
Linux 下估计是 3d 游戏太少(有也是固定几个 3d engine 弄出来的),所以除 N 卡外的 openGL 驱动不完善。
945的驱动,ubuntu 的确是装好的。但是用的 mesa 的。很多 openGL 特性都是软件实现,或根本没实现,只是留了个壳。
比如最基本的 S3TC 压缩贴图的扩展都没提供。(几乎所有的 3d 显卡硬件都实现了)就更别提现代 3d engine 必须用到的 GLSL 了。
大多数人用 linux 不觉得,是因为没有深度的 3d 应用在跑。平时能跑 X 桌面就够用了。
ATI 对 linux 支持的还可以,只是不如 Nvidia 而已。
Posted by: Cloud
| (10)
February 26, 2008 07:14 PM
我就是用linux做桌面
主板是690G
没觉得ATI的驱动哪里有问题了
compiz funsion也能正常工作
而且AMD/ATI不是刚刚说了要加强linux下的显卡支持
Posted by: Sparkle | (9) February 26, 2008 04:30 PM
GMA 945的驱动,ubuntu里面应该默认就安装好的。
intel对linux的支持还是不错的。至少我用compiz funsion也不需要再安装新的驱动。
我的GMA945用debian也没有问题,何况是面向桌面的ubuntu。
Posted by: joecen | (8) February 26, 2008 02:33 PM
RTL8111/8168B的问题也不算偏门的问题了。应该算是Windows下的网卡驱动做的坏事。可以去Realtek官方下个新的驱动回来编译一下,应该可以解决问题。
Intel的3D驱动不算太糟糕吧,在Linux上应该是N >> Intel > A,个人看法。在Ubuntu下是xserver-xorg-video-intel这个包。
Posted by: leemars | (7) February 26, 2008 12:38 PM
做的不好就干脆开放了少少的spec让大众自己去折腾吧...ATI、Intel就这么干着,估计节省不少成本咯。
Posted by: FiNALSErAPH | (6) February 26, 2008 12:22 PM
HP nx6330在FreeBSD下也只能用个radeohd的驱动,启动X.org就不错了OpenGL想都别想。
Posted by: khsing | (5) February 26, 2008 10:05 AM
我不打游戏,所以我的本本上也是linux,不过是fedora,呵呵。
Posted by: 江峰 | (4) February 26, 2008 12:35 AM
哈哈 自信源自能力和态度
Posted by: 胡章优 | (3) February 25, 2008 11:57 PM
Ubuntu的确不错。
Posted by: 安德尔斯 | (2) February 25, 2008 11:24 PM
“如果你是一个 3d 游戏玩家,也请选购 N 卡,因为为你开发游戏的程序员都喜欢它。”——
o(∩_∩)o...云风大哥自信满满啊!
Posted by: 今去冠首你你魔 | (1) February 25, 2008 11:12 PM