從 DOOM3 開源事件看開源化的暗涌
對電腦游戲界有認識朋友,相信一定聽過 DOOM 這個第一身射擊(FPS)游戲的元祖。最近開發 DOOM 的公司 ID Software 宣布把 DOOM3 引擎(ID Tech4)開源化,但卻遇上有人聲稱擁有某部分的專利。
有人聲稱擁有部分專利的技術名為 Carmack's Reverse,戲劇性的是 Carmack's Reverse 本來是 ID Software 始創人之一 John Carmack 冠以自己名字的技術,現在竟然被認為侵犯了專利,自然令他憤憤不平。這項技術的正式名稱是z-fail stencil shadows,多年前 Creative Labs 曾經「稍為研究過」,于是聲稱擁有該項技術的專利。
開源技術在公開時碰到此等狀況亦并非新事,一般情況下為免麻煩,最后只會有兩種結果:第一種是取消開源計畫,第二種是把「疑似侵犯專利」的部分去掉,然后再開源。偏偏 Carmack's Reverse 的結果卻是第三種,John Carmack 把 Carmack's Reverse 的技術重寫,以回避「疑似侵犯專利」的部分,然后重新開源。現時 DOOM3 程式碼已經在 github 公開了,大家可以在這里下載。 John Carmack 沒有在這件事上得到一分錢,他對開源技術的貢獻值得大家支持。至于法律方面的問題已經交由 ID Software 的母公司 Bethesda 的律師處理,目前只能看看對方有何行動再想對策。
John Carmack 是人所皆知的開源軟體的倡導者,他反對軟體專利,早在1995年放出了德軍總部3D 的程式碼,1997年又放出了 DOOM 的程式碼。 1996 年 Quake 社群一名程式設計師利用他放出的雷神之錘的程式碼開發了 Linux 版本,并且將修改后的游戲發給了 John Carmack。 John Carmack 卻沒有認為這是侵權行為然后付諸法律,而是要求 ID Software 的員工們用這個修補程式作為雷神之錘 Linux 版本的基礎。 ID Software 后來也同樣以 GNU GPL 授權公開了雷神之錘2和3的程式碼,電腦游戲界像 John Carmack 的人并不多,不管最后事件發展如何,他對開源技術的其精神值得我們學習。