我們玩遊戲的時候,經常會碰到一些莫名其妙的bug。一般來說,大家都認為這肯定是遊戲開發商的鍋,要麼是程序員不夠給力,要麼是測試人員不夠細心!那麼,如果一個遊戲bug只有你能遇到,別人都碰不到,會是什麼原因呢?這個可能就是自己硬件設備的問題。如果你的電腦(或主機)也完全沒問題,遊戲bug從何而來呢?
海外UP主“Veritasium”近日給粉絲們分享了一段科普視頻,其中美國太空總署噴氣推進實驗室的輻射效應工程師Leif Scheick博士表示:宇宙射線可以影響到地球上的電子設備,造成一系列問題的!也就是說,玩家們碰到的一些匪夷所思的遊戲bug背後的罪魁禍首有可能是宇宙射線!
“Veritasium”還舉了一個經典的案例:早在2013年,《超級馬里奧64》速通高手“Teabag”在挑戰“Tick Tock Clock”關卡時,不小心讓馬里奧飛到了地圖上層!這顯然是一個遊戲bug,其他玩家看到後自然想要模仿,但都以失敗告終,就連“Teabag”自己也不知道是怎麼觸發的!為了找到答案,甚至有土豪玩家懸賞1000美元,獎勵能夠重現該bug的玩家!
好多年過去了,1000美元始終沒有被人領走。直到2019年,那位土豪玩家不知從何處搞到了“答案”,並公布了方法:玩家們只要把馬里奧垂直位置座標參數通過“位翻轉(bit flip)”使之從1變成0,那麼馬里奧就可以“翻轉”到遊戲空間的上層,那麼“位翻轉(bit flip)”是誰弄的呢?
當然,相關的硬件故障和軟件故障都可以導致電子器件的“位翻轉(bit flip)”,而其中宇宙射線則非常可能是誘因。早在1978年,英特爾(Intel)就曾經遭遇過旗下器件自發性位翻轉問題,當時宇宙射線中的α粒子進入器件芯片內部,穿過硅產生“電子空穴對”(electron hole pairs)的現象,並解放電荷載體,在半導體阱中造成電子的堆積,進而導致位參數從1轉換成0。
人們了解到上述現象後,後續在半導體製造中採取了對應的手段防止意外的發生,因此現代的電腦(或主機)絕大多數情況下不會因為宇宙射線而發生故障。不過現代的技術並不能完全杜絕“位翻轉”,因此宇宙射線導致“Teabag”的硬件設備發生“位翻轉”,觸發《超級馬里奧64》離奇bug是完全有可能的。
值得一提的是:上述的“位翻轉”不僅會影響個人電腦或遊戲機,就連飛機或者汽車也不能避免。2008年,一架從新加坡飛往澳洲的飛機曾經因為上述現象導致自動駕駛模式出現了短暫的問題,讓飛機在空中俯衝了一段距離,導致多人受傷。因此,相關的產業中使用的芯片都專門針對“位翻轉”設計了保護措施。
我們一般玩家的電腦或者遊戲設備對於宇宙射線可沒有層層保護,所以碰到“位翻轉”是完全有可能。不過,“Teabag”又很幸運,他遇到的“位翻轉”剛好發生在馬里奧垂直位置座標參數,這樣才能觸發難得一見的bug。