Quake3引擎的源碼已經公開了,研究過的人都認爲雖然它年代比較久遠,可是代碼寫得很是漂亮,很是值得一探究竟。工具
Quake3引擎的源碼是徹底開源的,可是Quake3這款遊戲的資源(聲音、圖片等)並不是免費,因此,若是想要運行這款遊戲仍是必需要購買發行版CD。實際上能夠參考這個基於Quake3引擎的徹底開源的仿製遊戲:http://www.openarena.ws/ui
比較鬱悶是國內外的研究者雖然並很多,可是網上能找到的資料卻少得可憐,比較有價值的更是少之又少。多是當時的互聯網環境沒有今天那麼活躍。spa
step1.首先,咱們要作的是下載完整的遊戲並確保可以運行起來。code
1.原始遊戲光盤提取出來的安裝文件:http://yun.baidu.com/share/link?shareid=2140437282&uk=1865178665 這個能夠執行setup.exe安裝到硬盤上也能夠直接執行quake.exe運行遊戲(可是要掛載原始光盤http://pan.baidu.com/s/1kTv70H5)。因爲下一步要打補丁,因此這裏選擇安裝到硬盤。使用默認的路徑就好。遊戲
2.官方放出來的升級補丁:http://yun.baidu.com/share/link?shareid=2142493317&uk=1865178665 直接安裝到上一布=步相同的位置下。若是上一步不更改安裝路徑,這裏也默認就能夠了。爲何要打補丁呢?由於咱們的源碼是1.32b版的,因此遊戲資源和配置文件也應該相應的進行版本升級,防止出錯。圖片
進入安裝目錄,雙擊運行quake3.exe應該能夠順利運行遊戲。順便說一句,雖然默認的設置使得遊戲畫質不好,可是在setup裏面進行一下分辨率等參數的設置,會有驚喜的。十幾年前的做品作到這種程度簡直就是神做。資源
step2.接下來,咱們要開始編譯源碼了。rem
這個就是引擎的源碼文件:http://yun.baidu.com/share/link?shareid=2141708827&uk=1865178665 進入code目錄直接調用VS打開quake3.sln,我使用的是VS2012,會提示進行升級和移除源代碼管理綁定。設置爲release直接F7進行build。編譯好的文件都在code\Release目錄下。源碼
step3.使用本身編譯的引擎。asm
先準備一下環境變量,將 code\win32\mod-sdk-setup\bin 這個路徑加入到 path 中,由於須要用到 lcc 和 q3asm 兩個編譯工具。而後打開 code\intallrelease.bat 這個文件,註釋掉最後一行和倒數第三行,而且將倒數第二行中的 "_ta" 和 "g:" 去掉,使得最後三行變爲這樣:
rem call closefilescopy release\quake3.exe \quake3\quake3.exerem call installvms
保存好,執行一下這個文件,待結束後根目錄下,多了一個 quake3 的目錄,這裏麪包含了一些遊戲須要的一些文件。
完成後,打開code\runrelease.bat,將裏面的內容修改成:
release\quake3 +set fs_basepath \quake3 +set fs_cdpath "C:\Program Files\Quake III Arena" + %1 %2 %3 %4 %5 %6 %7 %8 %9
其中,運行時參數 +set fs_basepath \quake3 是指定quake運行時根目錄,即上面在多出來的那個 quake3 的目錄; +set fs_cdpath 即指定加載資源的目錄,也就是安裝好的遊戲的目錄。保存並執行便可。