17173 > 游戏资讯 > 新闻快讯 > 正文

经典《3D弹球》无缘新版Windows,因64位移植BUG难以修复

2026-08-24 15:15:24 神评论
17173 新闻导语

微软揭秘经典《3D弹球》消失真相:因64位移植BUG无法修复,浮点数误差导致弹球穿透障碍,代码无注释难以调试,最终被移除Windows系统。怀旧玩家必看!

很多老PC用户对Windows自带的《3D弹球》记忆犹新,这款小游戏从Windows95开始预装,直至Windows Vista版本彻底从系统中消失。长久以来流传不少猜测,微软工程师Raymond Chen在博客文章当中公开当年真实原因,问题根源并不是版权,而是64位移植产生的程序BUG。

图 (11).jpg

图 (12).jpg

这款《3D弹球》原名《Full Tilt! Pinball》,由Cinematronics团队开发,代码本身并不归微软所有。

2000年初,团队需要把海量Windows代码从32位迁移至64位,适配Windows XP64位版本。移植完毕之后,《3D弹球》出现诡异故障:弹球会直接穿透桌面障碍物凭空掉落,游戏完全无法游玩。

故障来自碰撞检测逻辑里一处隐蔽的浮点数舍入误差,代码运行在64位环境运算结果发生改变。开发小组尝试修复,却陷入困境。游戏源码来自多年前的外部厂商,完全没有注释,微软内部没人读懂这套代码逻辑。RaymondChen描述:“我们甚至找不到碰撞检测器对应的代码位置。”

图 (13).jpg

当时项目还有海量系统代码等待移植,上线时间迫近,没有充足时间逐行啃懂第三方游戏源码。管理层最终敲定方案,直接移除《3D弹球》,不再内置进后续Windows系统。Chen本人表示自己很喜爱这款游戏,但没有其他解决办法。

后续原开发公司Cinematronics连同发行商Maxis一并被EA收购,Space Cadet弹球桌相关授权也归于EA。微软并不掌握源码所有权,不能自行修复或是重制。时至今日现代Windows依旧没有原生《3D弹球》,怀旧玩家想要体验,只能使用爱好者社区制作的复刻版本。

【编辑:不撸寺】
关于3D弹球,Windows,64位移植,BUG,碰撞检测,浮点数舍入误差,微软,Raymond Chen,Cinematronics,EA,3D弹球消失原因,Windows 64位移植BUG弹球穿透的新闻