真·祖?zhèn)鞔a。
有句老話說的好:“要是你的代碼還能用,就別去碰它。”最近,一條沿用了20多年的“祖?zhèn)鞔a”,讓V社成了這句話最忠實的踐行者。
在Reddit論壇上,一名用戶最近偶然發(fā)現(xiàn)了《半條命》系列里的燈光閃爍頻率有種奇怪的既視感:
注意到了嗎?23年前的初代《半條命》里的燈光,居然和2020年誕生的《半條命:愛莉克斯》有著同樣的閃爍頻率。
這名資深玩家立即意識到了事情的有趣之處,如果這不是什么彩蛋(經(jīng)過驗證后確實不是),那只能解釋為制作方的無心之舉,如果是無心之舉,那就意味著V社將一條放了20多年的代碼搬到了新游戲上。
之后,有人發(fā)現(xiàn)了更戲劇的內(nèi)容:這串代碼不僅歷史悠久,甚至還見證了V社的游戲歷史。因為除了能在半條命全系列中找到相同的燈光場景,在V社的另一個知名系列《傳送門》里,也有不少類似景象。
這名用戶順藤摸瓜,最后找到了這個場景的源頭——1996年發(fā)售的經(jīng)典FPS游戲《雷神之錘》。
從左上角開始,依次是《雷神之錘》《半條命》《半條命2》和《傳送門》,將四個場景放到一塊后,雖然發(fā)光的設(shè)備不同,但可以很明顯地看出它們維持著相同的閃爍頻率。
在仔細研究了半條命已經(jīng)開源的代碼后,另一位玩家給出了相對合理的解釋。V社自初代《半條命》誕生以來,一直使用26個字母來表示燈光的明暗程度,字母“a”代表完全熄滅,“Z”相反,表示最大亮度。
而在這些游戲的源代碼中,都能找到一條“mmamammmmmammamamaaamammma”的代碼,注釋也正好是“燈光閃爍”:
所以在這20年的開發(fā)歷史中,凡是涉及到需要“燈光閃爍”的場景,V社基本就是從原先的代碼庫中復(fù)制粘貼,這才有了“祖?zhèn)鞔a”的說法,但真要細究,可能這段代碼也不能算在V社的頭上。
最早出現(xiàn)這個場景的是《雷神之錘》,這是id Software的創(chuàng)始人約翰·卡馬克利用同名引擎Quake制作的FPS游戲,而隨后的初代《半條命》也同樣基于該引擎的改良版開發(fā)而成。
初代《雷神之錘》
當(dāng)初編寫引擎的程序員隨手打下了一串負責(zé)場景的代碼,之后便被V社原封不動照搬過去;并且即使到了《半條命:愛莉克斯》,這個使用了不同引擎的游戲時,一旦需要“燈光閃爍”,制作組還是會下意識地復(fù)制前作的代碼。
于是一代傳一代,最終造就了一段“祖?zhèn)鞔a”,這也正好印證了編程領(lǐng)域的一句名言:永遠不要重復(fù)造輪子。
仔細想想,這也算是個制作組無意中留下的彩蛋了,發(fā)現(xiàn)這個秘密的玩家最后感慨道:“現(xiàn)在當(dāng)我看到這個不規(guī)則閃爍的燈光,我就好奇還能在多少游戲中看到這個場景?!?/p>
1.《游研社_玩家發(fā)現(xiàn)了一條V社反復(fù)用了20年的祖?zhèn)鞔a》援引自互聯(lián)網(wǎng),旨在傳遞更多網(wǎng)絡(luò)信息知識,僅代表作者本人觀點,與本網(wǎng)站無關(guān),侵刪請聯(lián)系頁腳下方聯(lián)系方式。
2.《游研社_玩家發(fā)現(xiàn)了一條V社反復(fù)用了20年的祖?zhèn)鞔a》僅供讀者參考,本網(wǎng)站未對該內(nèi)容進行證實,對其原創(chuàng)性、真實性、完整性、及時性不作任何保證。
3.文章轉(zhuǎn)載時請保留本站內(nèi)容來源地址,http://f99ss.com/gl/1871175.html