返回第106章 捡到一个亿(第2/2页)  传奇软件帝国首页

关灯 护眼     字体:

上一页 目录 下一章

之后的1991年月1日,游戏公司idsfar成立,1991年月八日,暴雪(bliardrai)在加州成立。这都是改变电脑游戏产业的公司。

    “等一下”,王诺岳突然举起了手,示意大家安静下来。他觉得自己好像忽略了一件重要的事。

    “你们下班吧,我要想一点事情。”王诺岳说道,然后转身走进了班公室,把门关上。

    外面的人面面相觑,高宏杰轻声说得,“看来老板是又什么想法了。大家下班吧。”

    王诺岳在自己的办公室里,竭力的挖掘脑海中的一闪即逝的思绪。

    “《星际争霸》、《暗黑破坏神》、《魔兽争霸》、《魔兽世界》、战?不,这都不是刚才的思绪。“王诺岳摇摇头,排除掉了暴雪。

    ”那就是idsfar了。《德军总部d》、《毁灭战士》(d)、《雷神之锤》(ak)?“

    突然间,王诺岳的心跳猛然加快:”传奇程序员约翰·卡马克(jhdarakii)”

    “平方根倒数速算法!”他抓住了刚才一闪即逝的思绪。这一刻,一种巨大的满足感和幸福感一下子充满他的心。

    “让我静静。让我把思绪好好理一下。”王诺岳对自己说道。

    idsfar是一家成功的游戏公司,这家公司的成功,有一半要归功于约翰·卡马克,一个天才的程序员。他最出色的技术是计算机图像领域。他在d上第一次使用了二叉树分割技术,在ak中第一次使用表面缓存技术,在d里面使用了“卡马克反转”(即shadv的-fail方法,这并不是卡马克首创,但他是独立研究出来)。然后,就是这个平方根倒数速算法。

    平方根倒数速算法并不是卡马克发明的,它的发明者,在三十年后也没清楚。但它的重要性和实用性,却毫无疑问。

    王诺岳想起了梦境中,《雷神之锤》能称得上流畅的画面,和同时期其他游戏一帧一帧的画面。而《雷神之锤》d引擎性能远超同时期的其他游戏引擎,一个主要原因就是采用了这个算法。

    在处理坐标转换与光源的专用硬件设备出现前,d图形程序的光照和投影效果需要使用正规化向量来实现,而计算正规化向量,则要用到浮点数的平方根倒数。因为每秒都需做上百万次平方根倒数运算,这导致软件的计算速度相当之慢。而这个算法,能将计算速度提高4倍。

    王诺岳继续清理自己的思路,当005年《雷神之锤》的原代码在上发布的时候,这短短十行的程序引起了轰动。因为它减少了求平方根倒数时浮点运算操作带来的巨大的运算耗费。虽然王诺岳的主攻方向不是计算机图形学领域,可也跟风看了一下,大致的算法还是记得的。

    这个算法最关键的地方,是接收一个位带符号浮点数,然后将之作为一个位整数看待,以将其向右进行一次逻辑移位的方式将之取半,并用十六进制“魔术数字”减之,如此即可得对输入的浮点数的平方根倒数的首次近似值;而后重新将其作为浮点数,以牛顿法反复迭代,以求出更精确的近似值,直至求出匹配精确度要求的近似值。

    最初人们猜测是卡马克写下了这段代码,但他否定了这个观点,并猜测是优化雷神之锤的资深汇编程序员rjahis写下了这段代码;而ahis表示,在1990年代初,他只曾作过类似的实现,确切来说这段代码亦非他所作。

    不过,王诺岳没记住这个魔术数字。但没关系,他记得大致范围,为了价值几亿美元的d游戏引擎,他可以组织一个组,专门来寻找这个魔术数字。快眼看书小说阅读_www.bookcu.com

『加入书签,方便阅读』

上一页 目录 下一章