看板 C_Chat 關於我們 聯絡資訊
原來是32位元轉64位元碰撞盒浮點數溢位的問題 現在看這問題某種程度算計算機常識 科技考古:為什麼 Windows Vista 後就沒有立體彈珠台了?資深工程師親曝移植內幕 https://www.techbang.com/posts/132605-why-windows-3d-pinball-disappeared-64-bit 回味下載點,這是修正BUG後的版本 z=右擋片 .=搖機台 /=左擋片 空白鍵=發射 F3=開始遊戲 https://www.groovypost.com/howto/windows-7-3d-pinball-space-cadet-game/ 微軟在 Windows 2000 與 Windows XP 時代預裝的經典內建遊戲《立體彈珠台》(3D Pinball: Space Cadet),是無數電腦玩家在沒有網路時期的童年回憶,但該遊戲自 Windows Vista 起便徹底從系統中消失。外界多年來普遍猜測是版權到期或法律授權問 題。 然而,微軟資深工程師 Raymond Chen 日前親自揭曉真相:遊戲消失的原因並非法律糾紛 ,而是在開發 64 位元 Windows XP 時,遭遇了極為詭異的Bug,加上原始外部程式碼缺 乏註解,團隊在時程壓力下只能無奈放棄移植。 64位元移植爆發Bug,彈珠直接穿透發射器墜入虛空 根據科技媒體 Windows Latest 報導,微軟工程團隊在開發 64 位元 Windows XP( Windows XP 64-bit Edition)期間,必須將數百萬行 32 位元架構的底層程式碼全面移 植至 64 位元環境。當移植進度推進至《立體彈珠台》時,卻爆發了一個難以理解的嚴重 錯誤:遊戲開始運作後,金屬彈珠雖然能正常掉入發射軌道,但在發射瞬間卻會直接穿透 彈簧裝置,甚至穿過整個球桌底部邊界直接掉出螢幕外,導致整款遊戲完全無法正常遊玩 。 Raymond Chen 與團隊同仁隨即著手嘗試修復這個嚴重的穿透錯誤,但排查過程卻陷入巨 大困境。這款遊戲的原始程式碼是由外部第三方公司撰寫,微軟內部根本沒有任何工程師 真正理解其底層運作機制。 更棘手的是,送交給微軟的程式碼檔案絕大多數完全沒有撰寫任何註解(Comments),工 程師甚至在數萬行程式碼中找不到負責處理彈珠碰撞偵測(Collision Detection)的核 心函式,也無法弄清究竟是哪一段浮點數捨入誤差(Floating-point Rounding Error) 造成物理引擎在 64 位元環境下崩潰。 科技考古:為什麼 Windows Vista 後就沒有立體彈珠台了?資深工程師親曝移植內幕 面對迫在眉睫的 64 位元 Windows XP 專案發布死線,微軟開發團隊當時手頭上仍有數百 萬行涉及系統核心穩定度與驅動相容性的重大程式碼等待移植。 Chen 指出,團隊實在無法僅為了一款休閒小遊戲,耗費數名頂尖資深工程師數天甚至數 週的時間,去大海撈針逆向工程外部無註解程式碼。在權衡專案整體交付風險與研發資源 配置後,Raymond Chen 最終只能做出艱難決定,正式將《立體彈珠台》從 64 位元版本 及後續的 Windows Vista 作業系統中剔除。 事實上,Raymond Chen 本人對於《立體彈珠台》的退役也深感惋惜與不捨。 他在回顧這段歷史時透露,自己過去在研究這款遊戲時,曾發現原始版本並未設置任何幀 率限制(Uncapped Frame Rate),導致在現代高效能硬體環境下,GPU 與 CPU 會瘋狂運 算、每秒渲染高達 100 萬幀(1,000,000 FPS),進而使處理器時刻處於 100% 滿載的高 溫過熱狀態。 當時,他特別為該遊戲手動加入了 120 FPS 的幀率上限鎖定,成功讓 CPU 佔用率直接從 100% 驟降至 1%,大幅提升了在後續系統中的運作效率,可惜該作最終仍因 64 位元物 理引擎難題劃下句點。 30年老玩家心中的不敗神作 《立體彈珠台》最早於 1995 年正式發行,由 Cinematronics 操刀開發、知名遊戲大廠 Maxis 發行,其完整商業版本《Full Tilt! Pinball》一共收錄了 3 張各具特色的彈珠 地圖(包含太空軍校生 Space Cadet、海盜尋寶 Skulduggery 與巨龍要塞 Dragon's Keep)。微軟隨後取得了人氣最高的「太空軍校生」單一關卡授權,並將其作為亮點功能 包裝進 Windows 95 的 Microsoft Plus! 擴充包內,隨後更一路成為 Windows NT 4.0、 Windows 2000、Windows ME 與 Windows XP 的標準內建遊戲。 儘管隨著作業系統全面跨入 64 位元時代,這款陪伴全球數億辦公族與學生度過斷網時光 的經典神作走入歷史,但其獨特的音效、炫目的光影與巧妙的任務晉級機制,至今依然是 許多玩家心中無可取代的科技鄉愁與時代印記。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.36.233.14 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/C_Chat/M.1787841965.A.6A5.html
tonyxfg: 其實如果微軟不要了的話,把遊戲公開程式碼,應該最遲一 08/27 22:49
tonyxfg: 個月內就有熱心民眾將bug修掉了 08/27 22:49
mc3308321: 這遊戲有破關或是完成任務之類的嗎? 08/27 22:51
spfy: 最後一段有提到 Win裡面的只是一套完整遊戲的單一關卡授權 08/27 22:52
spfy: 版權不在微軟手上吧 08/27 22:53
ainamk: 微軟只有移植那一關到windows系統裡的授權 不能亂搞XD 08/27 22:58
lazioliz: 重寫一個不就好了有那麼難嗎 08/27 23:01
就說了微軟沒有原始碼,因為那是第三方公司的 ※ 編輯: extemjin (114.36.233.14 臺灣), 08/27/2026 23:03:24
ainamk: 是沒有那麼難只是微軟不想幹XD 08/27 23:03
levelesin: 為啥不請第三方搞,比自己工程師硬幹省錢吧 08/27 23:04
spfy: xp 64bit也是超級雷的版本 它們那時候應該很多坑吧 08/27 23:04
spfy: 應該沒時間搞這個 後來可能直接放棄了 08/27 23:04
ainamk: 講白一點這個做了也不會讓你多買幾套windows 何苦呢 08/27 23:08
S2357828: 阿他們現在好像挺閒的 不能重弄一個嗎? 08/27 23:22
abccbaandy: 就不想花錢啊,想也知道,屎山代碼沒ai根本沒人想碰 08/27 23:55
miyazakisun2: 沒有註解的狗屎程式 就讓他死去吧 08/28 00:03
kusotoripeko: 希望有天重見天日,話說版權誰的 08/28 00:22
Oswyn: 原廠多半有註解版本 但拿掉了 不想給下遊 08/28 00:48