🌀 AIBB-Flywheel

新闻数据飞轮
← 返回文章列表
ithome 其他 采集 2026-08-22T16:19:34+00:00

微软谈《三维弹球》被删原因:代码没人看得懂

原始标题:微软谈老 Windows 自带游戏《三维弹球》为何删了:我们没法花好几天研究代码

来源
ithome
发布时间
2026-08-22T12:11:10
采集批次
2026-08-22-16
字数
710
URL 指纹
15d1df3b16cceb05

📌 AI 总结(224 字)

微软资深工程师Raymond Chen揭秘经典游戏《三维弹球》从Windows系统中消失的真相,并非法律纠纷,而是技术难题。在开发64位Windows XP时,团队发现弹球会直接穿过弹簧掉落,由于该游戏代码由外部公司编写且缺乏注释,没有人理解其工作原理,也无法定位碰撞检测代码。面对数百万行代码的移植压力和紧迫的上线日期,团队最终放弃了移植。Chen本人对此也感到遗憾,他曾发现游戏无帧率限制会导致CPU满载,加入120FPS限制后占用率降至1%。
📄 正文(710 字)
IT之家8月22日消息,据科技媒体Windows Latest今天报道,微软曾经在Win2K、WinXP等经典系统中预装《三维弹球》游戏。但随着Windows Vista发布,这款游戏最终被删除。

多年来,人们一直以为这款游戏被删与法律问题有关。但根据微软资深工程师Raymond Chen解释,这款游戏消失的原因,其实远没有大家想的那么复杂。

据悉,微软团队曾在开发Windows XP 64位时,将数百万行32位代码进行64位移植。当工作推进到《三维弹球》时,一个非常奇怪的Bug出现了:游戏开始后,弹球会正常落入发射器,随后它直接穿过弹簧,从球桌底部掉出去,导致游戏完全无法正常游玩。

Raymond Chen和同事随即尝试修复这个问题,但这款游戏的代码由一家外部公司编写,微软上下没有人真正理解它的工作方式,并且这些代码大部分都没写注释。他们甚至找不到弹球的碰撞检测代码,也无法弄清究竟是哪个浮点数舍入错误,导致弹球直接掉落。

微软团队当时还得移植数百万行代码,并且64位XP项目的发布日期已经迫在眉睫。最终Chen不得不做出决定,放弃移植这款游戏。

事实上,Raymond Chen自己也对这款游戏被砍感到遗憾。他曾发现这款游戏没有帧率限制,导致现代硬件每秒渲染100万帧,进而让CPU时刻处于满载状态。后来他为这款游戏加入了120 FPS帧率限制,使CPU占用率直接从100%降到了1%。

IT之家注:《三维弹球》最初发售于1995年,由Cinematronics开发、Maxis发行,完整版本包含3张地图。微软后来拿到了「太空军校生」关卡的授权,并将其加入Microsoft Plus!扩展包。