什麼是pk3文件

這一段時間在學習 Irrlicht 引擎,因爲之前是寫服務器的,對客戶端的引擎的瞭解基本處在一片空白的認知上(對於專業人士來說,呵呵~)。廢話不多說,直接進入正題:


1.什麼是pak文件?


pak文件是Quake系列遊戲所採用的一種特殊壓縮包格式,以利於遊戲的開發。由於是針對遊戲的設計和使用而採用的文件結構,所以與一般的壓縮文件有所不同,它的特點如下:
1.聲音,地圖,3D模型,材質貼圖等文件是按着保留目錄路徑結構的方式壓入pak文件的。
2.pak文件的後綴名在Quake 2裏是pak,在Quake 3是pk3。pak包裏的文件一般都是零壓縮率,不過Quake3中的擴充包是可以含壓縮率的。
3.命名有規定,其名字決定其優先級。

2.使用pak文件的好處:


使用pak這種文件格式對於遊戲的開發者和玩家都有着無與倫比的方便性和可塑性(或者說自定義性)。使用pak包這種形式有幾點好處:
  1.對於程序開發人員來說資源調用方便,易於管理;
  2.由於結構特殊,對初學者有屏蔽作用避免被亂改,對高手卻很容易修改,比較方便;
  3.所有模式都是利用這個特點做的;
  4.pak包被Quake的引擎視爲一個目錄,能利用外置pak文件的形式進行升級而無需刪除原有文件。利於增加效果包,新地圖,改進界面,增加model等擴展內容;
  5.修改還原便利,文件之間互不影響。


3.如何打開和修改pak文件:


pk3文件可以用Winzip 打開進行修改,只要最後的修改文件以pk3爲後綴名就可以使Quake3正確識別了。打開之後看到裏面的文件幾乎全是壓縮率爲零而且含路徑信息時,就想到這,不難猜想到pak文件可能就是一個大的目錄,只不過Windows把它識別爲一個超大文件,而Quake3的執行程序可以把它識別爲一個目錄。前面提到了零壓縮率,其實,如果是零壓縮率,那麼pk3文件就相當於一個普通的文件夾,Quake3從中讀取要調用的文件時只要尋找相應的路徑而無須對其解壓;如果是非零壓縮率,那麼還要經過解壓縮包這一步驟。但程序把調用文件解出後,應該是放在一個臨時文件夾裏,所以只是進入遊戲時慢了一點,在遊戲中並不影響運行速度,只是對遊戲的包大小有影響。
有一點大家千萬注意,就是用Winzip修改pk3時,是將文件全部先解壓放在其工作目錄後,再根據你的要求刪除,然後把剩下的文件打包,再覆蓋原有文件。所以你的工作目錄一定要有足夠的剩餘空間用來做虛擬內存。


特此筆記,與君共勉~





發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章