甚至不包括它的续作。
这意味着哪怕是开发《QUAKE2》,也需要完全重构一款全新的引擎。
引擎内部的每一个部分,每一个功能,都是为了解决特定的任务而生的。
《QUAKE》用BSP树,那就是BSP树,没有任何拓展或是改变的空间。
从工程学的角度来看,它有些不够优雅。
抽象程度太低。
但放在优化的角度来看,它的确是完美的。
在卡马克的心中,优先级最高的永远是‘能跑’。
其次是‘足够快’。
剩下的一切东西都不重要。
也就是说在卡马克的心中,他已经在脑海里开发完了《极品飞车》,这才围绕着这部作品反向编写出了这款引擎。
性能被压榨到了极限,开发速度奇快无比,没有任何多余的抽象层。
每一行代码,甚至是每一个字符每一个常数每一个变量,都是为了最终的目的而生的。
这很好。
至少放在8位和16位时代来看非常好,在极客的角度简直优雅到让人发疯。
但问题也恰恰就出在这里。
“卡马克,不知道你还记不记得我说的。随着硬件机能的提升、存储容量的增长,个人开发的时代已经一去不复返了。”
这句话当然不包括那些纯卖创意的独立游戏开发者。
而是针对的游戏工业化的大厂。
或者说是做3A、做次世代作品的这些公司。
“你看,你做的这个引擎固然完美,但它却不适合团队协作,当工业光魔的建模团队加入,当其他几位开发者加入,当克里斯托弗他们带着物理引擎加入……”
“这些被完全嵌死在代码里的设计和为了性能彻底牺牲了结构的设计,会造成巨大的麻烦。”
不是每个人都能像林立新这样面对一大堆被极致优化后的代码还能一眼分析出来的。
如果是其他开发者,光是啃代码,估计都要啃个十天半个月的才能初步上手开始开发。
“更何况,《极品飞车》是卖画质的作品,随着显卡的迭代,它必然需要一部续作。而到了那个时候,这个引擎真的还能继续用吗?”
答案是否定的。
林立新来到书架前,目光落在一本前些天刚刚入手的新书上。
《Zen of Assembly Language》
一本讲汇编码优化的作品,机器级思维的代表性读物。
这本来是林立新买来刷属性用,不过此刻却给他提了个醒。
这本书的作者……迈克尔·阿布拉什,一位图形学领域的专家。
目前还在微软担任程序员。
但按照原本的时间线,过不了多久,他就会成为idSoftware的一员。
成为卡马克诸多心腹之一,也是《Quake》的图形技术开发。
论起图形学,或许阿布拉什比不了卡马克。
但在优化和工程性这方面,他绝对是有说法的。
? 第502章 卡马克的人格补全
想要挖角一个卡马克这种级别的超级天才,尤其还是一个已经成名的天才,并不是一件容易的事。
至少不会像过去林叔叔拐骗小卡马克那样轻松写意。
迈克尔·阿布拉什是什么人?
对圈子外的人,甚至哪怕对于游戏开发者们来说,或许都是一个名不见经传的存在。
但在程序员的圈子里,他的大名简直如雷贯耳。
放在这个时代,但凡是学习汇编语言,学习图形学,学习优化等领域,绝对绕不开阿布拉什的作品。
《Zen of Assembly Language(编程语言的禅意)》
乖乖,就看看这书的名字吧。
在一众理工直男味儿极重的书名里,它的名字简直是鹤立鸡群。
这一切都归于阿布拉什自己独特的程序思想。
在阿布拉什看来,优秀的程序员不仅仅需要了解指令集,更是需要培养‘直觉’。
对硬件的直觉,对程序的直觉。
通过观察、实验和创造性的思考,发现那些隐藏在设计深处的优化路径。
这种思想,哪怕是放在后世,也同样难能可贵。
尤其是在硬件机能高速膨胀的时代,越来越多的开发者甚至都已经彻底摆烂了。
彻底放弃了对软件的优化。
反正再过几年,甚至再过几个月,新一代的硬件就能让性能提升一大截,自己又有什么优化的必要呢?
玩家运行不动,那是他们自己的问题,多花点钱买新硬件不就好了?
程序员懒得做,老板看不到明显的反馈也不爽,项目经理更是宁愿把经费投进Token里多跑几天AI。
怎么说呢……
从商业和经济性的角度来看,优化似乎真的已经慢慢成了一个伪命题。
但这显然是错的!
沟槽的,用新显卡不做优化能稳定跑60帧,那不是说明如果好好做优化能跑的更高吗??
回想起来,早年间的游戏开发者们,简直是一群魔怔到极致的手艺人。
最经典的例子自然就是《超级马里奥》了。
宫本茂和开发团队简直是将‘奇技淫巧’这个词儿给贯彻到了极致。
初代的超马仅有几十KB的大小。
这是啥概念?
假设用现代的机器跑模拟器运行超马,然后用截图软件将游戏画面截取下来。
那尺寸都至少得有上百KB。
一张图片,还是jpg图片都不到的大小!
宫本茂他们几乎是将每一个字节都榨取到了极限,没有一丁点的性能是被浪费掉的。
《德军总部3D》、《DOOM》、《Quake》也是同样的道理。
卡马克将图形学发挥到了极致,用完全2D的机能硬生生创造出了3D的世界。
优化好啊,优化得做。
能把优化做到极致,他们就能够跨越硬件的时代差异,实现一些看似不可能的东西。
卡马克能做这个,但他并不是最擅长的。
而为了解决日后引擎部门的优化工程师的问题,林立新得亲自跑一趟。
……
华盛顿州,雷德蒙德。
虽然叫华盛顿,但这里并不是东海岸的那个华盛顿特区。
而是西海岸北部的大州,跟加利福尼亚仅隔着一个俄勒冈州。
传说中的冰雨夜万圣节的那个西雅图,就是华盛顿州的城市。
同时,这里也是微软的大本营。
一间安静的小餐厅内。
‘咚咚’
包厢的门被轻轻敲响。
随即,一位长相十分符合林立新对‘美国极客’刻板印象的男人走进房间。
他疑惑地扫了一眼房间内的陈设,目光落在坐在主座的林立新和他身边的卡马克身上。
不同于林立新那副随意的样子,卡马克整个人在看到来人的第一时间就拉响了警报,死死地盯着他。
“林先生。”
阿布拉什不卑不亢地轻轻点头问候了一声。
在得到林立新的肯定后,这才走进包厢落座。
在最开始收到请柬的时候,阿布拉什本以为这会是一场恶作剧。
直到这一刻,他才真正确定了这事儿居然是真的。
才刚落座,林立新端起咖啡杯灌了一口,立马像是连珠炮似的秃噜出来一大段话:
“我们要挖个懂优化懂图形学懂汇编的高手来做引擎,目前的需求大概是……以及我们需要……当然,对于性能这方面……怎么说,干不干?”
“啊?”
阿布拉什整个人都愣住了。
没想到会这么开门见山地直奔主题。
连点寒暄都没有,也没有任何花里胡哨的信息交换。
就这么直接抛给他了一个问题。
干不干?
实在是在霓虹出差那几天,让亚洲模式给林立新憋的够呛。
既然回到了美国,那自然是要整点美式的。
哪有那么多花里胡哨的,就问你干还是不干。
林立新甚至压根都没提薪资待遇的问题。
说实话,阿布拉什自己其实也压根不在乎这些。
倒不是说他有多么清高。
而是阿布拉什早就已经实现了财富自由。