8月4日
1. John
Doom3终于上市了。长达四年时间,花了两亿多人民币的开发费用,新的经典终于诞生了,凤凰终于再一次的从火灰中重生。全世界的玩家——包括耶稣、释迦牟尼、老子和他们的狗——开始了一场新的游戏体验。
id的家伙们长长的吁了一口气,大家都回家了,只剩下John Carmack一个人留在办公室。他的办公室还是这么简洁。20吋的LCD显示着Visual Studio.Net 2003上的doom3项目。他无意识地浏览者一个.cpp文件,代码像他的办公室一样简洁。该干点什么呢?他摸了摸下巴,下巴跟他的代码一样简洁。终于,他打开了IE,登陆进了slashdot.org,上面有成千上万的讨论Doom3的帖子。他稍微浏览了一下,忍不住回了一贴:
“我对Doom3感到无比的自豪, 我觉得这是我们制作过的最棒的游戏, 它达到了我事先的所有期望. 尽管这话听起来很老套, 但这次我是说真的: 考虑到游戏所采用的技术, 我的确对它抱有若干期望, 而结果证明, 我们做得比期望还好.
“我们相信会有许多玩家喜欢Doom3.
“我不怎么上游戏论坛, 因为, 娱乐本身是一件很主观的事情, 没法让所有人都满意. 尤其是当某款游戏就像是某种另类文化的符号时, 情况就更糟糕一些. 这篇slashdot的讨论很大程度上应证了这一点...
“除了各种基于Doom3技术的游戏/扩展之外, 我们已经着手开发下一款游戏, 它将使用新的引擎, 这够我忙一阵子. 此外我只能说, 这款游戏不再是任何前作的续集. 我们有一支非常稳健的团队, 经过Doom3开发过程的洗礼, 我相信我们下一款游戏不再需要四年的马拉松.”
回完了帖子,Carmack长长的吁了一口气,关机,下班,从车库开出法拉利。法拉利在深夜的灯光下闪耀着炫目的光芒——就像Doom3里面的镜面反射;尾灯闪烁,在夜色里闪着红色的光晕——就像Doom3里面的flare效果;引擎安静的转动着,简洁而有力,就像Doom3的引擎。Carmack对这一切感到很满意,就轻轻一踩油门,法拉利滑向夜色中...
2. Tim
Tim Sweeney也还没有下班。他还在紧张的开发Unreal 3引擎。整个引擎其实已经看起来很不错了。但是Soft shadow的优化令他很头疼。并且公司的技术网站上说的spherical harmonic maps功能其实也还没有实现。他的机箱躺在桌子上,并且没有上盖,两块Geforce 6800 Ultra的风扇稳定的转着。他喝了一口咖啡,继续紧张的思索着——blur stencil其实效果也不错,比算半影要快,不如改用blur stencil算了。其实他自己都不知道自己到底在想什么。很多时候他总是在实验各种方法,看各种方法的效果和性能差别。很少人明白他做的事情,或者懂他做的事情。他总是感到很孤独,除了偶尔想起John Carmack的时候,心里有了一点安慰——还有比我更孤独的人。
CEO走了进来,把一个盒子放在他的桌上。“看看吧,Tim”,CEO说,然后走了。
盒子上当然印着"DOOM III"。还有一个很大的id的Logo。
“看什么呢?”其实他很久没玩过游戏了。他把玩着盒子,但是没有马上把游戏往电脑里面装。他曾经也是一个Doom迷。就是因为喜欢Doom,他才可能走向游戏制作的道路。但是,他现在对这个有点游戏有点厌倦了。可能是年纪大了吧,任何游戏他都提不起兴趣了。
终于把Doom3安装了,开始了试玩。
嗯。不错。优化的很好。美术也不错。UI很好啊,可以贴到任何面上,并且还可以交互,这个我要学一下。realtime-bump和stencil shadow都不错。不过没有什么很有新意的东西阿。这些技术基本上都是普通的拉。没有lightmap,所以效果总是怪怪的,没有真实感,因为不能算辐射度。当然,这不怪Carmack,realtime lighting光源总不能太多。没有室外,没有交通工具,没有自然景观,不爽。呵呵。
终于,Sweeney感到无聊了。他打入god, give all, noclip。
最后,他删掉Doom3,然后继续优化他的代码...
3. Puzzy
Puzzy也没有下班。公司的事情多,人也多了起来。从几年前的几个人到现在几十号人,管理工作也复杂起来了。特别是美术方面,人手总是显得不够。但是总是要抽出时间来写代码,所以也深人静的时候最好。大家都在赶10月份的一个叫ChinaJoy的show,所以都很晚回。但是现在真的是太晚了,剩下的人已经不多了。
BT在紧张的下载着Doom3。已经83%了,快了。
边干边等吧。他想。ATi的OpenGL Driver太滥了,vertex buffer object这个扩展总是不去优化。搞得很头疼。这下好了,Doom3一出,ATi就急着去优化driver了。想到这里,他喝了一口矿泉水——怎么不冰?他皱了皱眉头,去重新倒了一杯冰的。
Doom3他已经期待很久了。现在终于马上可以玩到了。想到这里,稍微有点激动,脸上有点红潮。
100%,终于下载完了。当然马上安装,开始了激动的游戏之旅。毕竟等了4年。握鼠标的手稍微有点颤抖。
事后,他回忆说:
“我打了20多分钟,差点没把心脏病吓出来。我才明白realtime per pixel lighting 和 realtime shadow volume在暴利恐怖游戏中最大的作用在哪里。 就是激发起人类本能的恐惧感。人对黑暗有一种本能的恐惧。而靠全realtime的光照和阴影,可以最大限度突出黑暗。 只有完全实时可控制开关和亮度的光照,配合阴影,才有可能把黑暗给人心理上的恐惧渲染到极点。当然,真实度越高,沉浸感越强,在一个全封闭金属构造室内环境下,采用大量高光的pixel lighting和硬阴影是真实的。游戏中,最恐怖的时刻不是拿枪向怪物设计的时候,而是面对黑暗和忽明忽暗环境中不明物体阴影的时刻。
“可见,刻意追求某些具体技术是没必要的。必须能体现游戏特性。但想找到体现游戏设计的最佳技术,没有全面刻意追求技术前提,是根本办不到的。ID应该是从具体技术出发,衍生出游戏特性。比如极端狭小的室内过道空间,一道道自动门挡住portal。都是为了能在保证流畅前提下体现光影。但这种从技术到游戏的例子只可能ID做。他们有积累,无论技术还是资金,经验。也有天才。这是一个世界其他游戏公司不太可能效仿的样本。”
4. 和尚
和尚隐居于高层之巅——当然是带电梯的——正在揣摩般若波罗蜜多心经,这部经书,他已经读了无数遍了——可是还是看不懂。色如何是空呢?你看这个高光,这个漫反射,他手指虚指,愁眉苦脸的。
这时候想起了门铃声。路人甲总是适时地出现,扮演他何时的角色。
“大师,Warcraft是好游戏吗?”
“是。”
“大师,WoW是好游戏吗?”
“是。”
“大师,EQ2是好游戏吗?”
“是。”
“大师,Quake3是好游戏吗?”
“是。”
“大师,Doom3是好游戏吗?”
“呃...今天到此为止”,和尚突然睁开眼。
To be continue...
| 5. 4个人 但是,悲惨的事情发生了。到目前为止,实际上全世界只有4个人玩过Doom3。真正欣赏的只有两个人。 中国的网吧依然在CS里面狂殴,或者在垃圾网游里面PK别人或者被别人PK。新浪论坛一如既往地在屎尿中翻着苍绿色泡沫。Doom3对这里毫无影响,没有一个人对Doom3座有关的评论。唯一的一个有关Doom3的帖子,被一个刚学D3D的斑竹注明不要加精。另外一个斑竹依然把论坛当这泡妞和卖弄的私人园地——虽然我觉得泡妞到酒吧或者舞厅更合适。 和尚怜悯的看着这一切,依稀追忆着当然Doom1和quake的时代。当年id是多么的疯狂?当然id是电子游戏业的圣地麦加,当然玩doom/quake是最in的事情;当年夜总会不是拍丸子,而是把玩Doom/quake视为堕落和颓废的象征;当年上至流行歌手天王,下至残杀同学的杀人犯,都把Doom/quake视为唯一的休闲——胜过美酒和美女;当年的新新人类总是激烈的讨论着Doom/quake的对战技巧。 但是这一切都已经过去了。老迈的帝国新作对于新的世界没有投射出多大的影响。当年的新新人类已经变成了30多岁的青年,已经变得缺乏激情。新的新新人类都没有听说过id。“id?是什么公司?是天晴数码的一个小组吗?” 和尚的心情是沉痛的。和尚当年也是id的忠实扇子。但是,他写这一个帖子之后,目的就是要告别旧的偶像,因为偶像已经塌崩了。因为,做id的扇子已经成为老迈的象征,是过气明星的象征,是上了年纪的象征,是开始老年痴呆的象征。估计过上几年,只有医院的老人痴呆病房和精神病院的病人才会去打id的游戏。 网上一群玩家在争论Doom3怎么样。 “不如FarCry艳丽。”一个新新人类说。 “连Call of Duty也比不上。”另一个说,他连CoD是用Q3引擎都不知道,id的引擎。 “嗯,不如CS好玩啊。”又一个说,当然,他也不知道CS是用的Quake1.5引擎,也是id的引擎。 他们说错了吗?没有。一个人说了,就代表了他的看法,就是一个声音。id确实已经在这些人心目中不存在了,就像是上帝已经在绝大多数人心中已经不存在了一样。如果上帝不存在在任何人心中,上帝还存在吗? |
| 2004年4月份的时候GameSpy对Carmack进行了一次专访,其中有如下对话: GameSpy: 您最佩服哪一个游戏开发公司? John Carmack: 可能是Valve,因为作为一家新公司,他们做出了很多正确的决策,而且最终取得了最佳的成果。 Carmack说的太对的。Valve做出了很多正确的决策,并且,最终取得了最佳的成果。相反,id做出了很多错误的决策,取得了不好的效果。Carmack毕竟是一个谦虚的人,一个懂得马列主义的人——实事求是不就是马列主义的核心吗? 当初quake1写硬件渲染得时候,id用OpenGL是正确的选择。当时没有Direct3D,只有3Dfx的专属API Glide。Carmack不喜欢专属的API,所以3Dfx的programmer花了两天专门为Carmack写了一个miniGL API,给他写GLquake。 但是,最近几年再死抱着OpenGL不放是明智的选择吗?不是。现在3D chip发展太迅速了,而OpenGL ARB成了ATi、nVidia、3Dlabs和Microsoft等大厂角逐市场控制地位的竞技场。API更新缓慢,每个vendor自己出自己专属的扩展,搞得乱七八糟。ATi出的扩展nVidia是不会支持的,反之亦然。今年看到nVidia支持ATi的ATI_draw_buffer扩展,差点感动的流泪——这些厂商终于为程序员着想。但是这种事情太少发生了。当然,nVidia和ATi支持同一个扩展,那么这个扩展很快就成为ARB的扩展——ARB_draw_buffer。很多D3D很早就是实现的普通功能,OpenGL ARB还在嚷嚷扩展的规范。Vertex Buffer OpenGL去年才有了统一的规范,而render to texture到现在还没有跨平台的统一规范。后来Microsoft甚至退出了ARB。ATi主导的Super Buffer,nVidia提出不同的意见,推出了自己的pixel_buffer_object。OpenGL 2.0叫嚷了几年,现在还没有影子。 现在还有几个纯OpenGL游戏?基本没有了——除了Doom3。Valve转向了D3D。Unreal也把D3D作为首选的开发API,当然他还是支持OpenGL。FarCry也是这样。至于其他技术实力弱一点的公司或者小组,就只支持D3D了。另外,技术实力弱一点的硬件公司,比如S3和Xebra,OpenGL driver的技术水平更是目不忍睹。他们首要是要支持好D3D,因为99%的三维游戏是用D3D写的。 现在还有公司或者小组用OpenGL来写游戏,绝对是一场噩梦。Puzzy他们是这样,我自己也是。对此深有体会。 OpenGL在实时三维游戏领域的没落是必然的趋势。Carmack以一人之力挑战整个产业的趋势,就算他再强大也是徒然的。可怜很多人被他误导了很多年。OpenGL很快就只会应用到DCC(Digital Content Creation)领域(比如Maya,Softimage,3dsmax这些软件)——那时他本来应该呆的地方。 另外,从Romero从id离开后,id的编辑器就没有怎么本质的改动过。现在,id的编辑器和unreal——甚至和FarCry比——都不是一个档次,差太远了。所以,unreal引擎无论从销量到售价,都比Quake高出一大截不是没有道理的。Unreal的架构从最开始到现在,都没有怎么变过,但是id的引擎,就变化太多了,从最早的quake1的QuakeC,到quake2的dll,到quake3的vm/dll,到doom3的新的七拼八凑doom script,从最开始的纯C,到现在C和C++奇怪的混杂,都是一变再变。Carmack有hacker精神和水平,但是缺乏系统架构师的能力——没读过书就是没读过书,差距是一眼就可以看出来的。但是,当然比国内的程序员高多了。国内的程序员大多数还停留在Cracker的水平——就是头疼医头、脚疼医脚,没有整体的设计,没有人有担当系统架构师的能力,能在一两个技术点上突破就可以冒充高手。 id的死亡从技术上死亡是最本质的。因为以前就算有人质疑id游戏的可玩性,但是几乎没有人会质疑id的技术水平。但是,因为carmack的固执——或者说偏执——令得id在技术上也沦为另类。
|
