关于DNF的多媒体包NPK文件的那些事儿(9) - IMGV6
IMGV6是IMG結構的第六個版本。IMGV6同IMGV4一樣采用索引形式(不是RGBA!)存儲數據,目前代替絕大部分IMGV4用于時裝圖像的存儲。它允許同一個索引數據帶有多個調色板,以實現將多個形狀一致但顏色不一致的貼圖(多個IMGV4)合并成一個貼圖(單個IMGV6)。
IMGV6在文件的前端帶有的調色板信息,存儲了多個解決方案所使用的顏色索引表(在戀のEX里稱為“顏色方案”)。系統在讀取貼圖時,需要輸入一個參數決定選擇哪個顏色索引表(例如皮膚文件有17個顏色索引表),確定后,剩余的步驟同IMGV4一樣。
IMGV6的結構如下表所示:
| 文件頭 | 20字節字符串(注意空格)“Neople Img File”外加“\0” | |||||||||||||||||||||||||
| 索引表大小 | 4字節,索引表所占空間(注意不包含顏色板的空間)。 | |||||||||||||||||||||||||
| 保留 | 4字節,為0。 | |||||||||||||||||||||||||
| 版本號 | 4字節,IMGV4文件結構中的版本號為4。 | |||||||||||||||||||||||||
| 索引表數目 | 4字節,索引表的表項(包括指向型和圖片型) | |||||||||||||||||||||||||
| 調色板數據 | 首4字節為調色板所包含的顏色方案數,之后按順序存儲每個顏色方案,每個顏色方案頭4字節是該顏色方案包含的顏色數目,隨后是4×顏色數目個字節則為該顏色方案的具體數據。 | |||||||||||||||||||||||||
| 索引表 | 索引表項1 | 由若干個索引項構成。索引項包括2種,指向型和圖片型。圖片型存儲對應圖片的各種信息,指向型只存儲一個數據,即所指向的圖片的幀號。 ?
? ? | ||||||||||||||||||||||||
| 索引表項2 | ||||||||||||||||||||||||||
| 索引表項3 | ||||||||||||||||||||||||||
| 索引表項4 | ||||||||||||||||||||||||||
| …… | ||||||||||||||||||||||||||
| 貼圖數據 | 圖像數據塊1 | 由首尾相接的圖像數據塊構成。 由于大部分圖像數據由ZLIB進行壓縮,因此經常以“0x78 0x9C”數據開頭(但不可以其為標準作為圖像數據塊的起始點),解壓后是索引數據,根據索引在調色板中查找對應的顏色。 指向型索引項不對應任何圖像數據(即對應的圖像數據大小為0)。 | ||||||||||||||||||||||||
| 圖像數據塊2 | ||||||||||||||||||||||||||
| 圖像數據塊3 | ||||||||||||||||||||||||||
| …… | ||||||||||||||||||||||||||
IMGV6將多個IMGV4合并成一個IMG文件,最大的優點是再一次節省了大部分空間,但最大的缺點就是不能輕易再對形狀做改動,在IMGV6里,是無法插入一個PNG圖像的,因為帶來的處理方式無法兼顧其內部所有顏色方案的數據。
總結
以上是生活随笔為你收集整理的关于DNF的多媒体包NPK文件的那些事儿(9) - IMGV6的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: messagedigest 图片加密_M
- 下一篇: html中样式表的三种形式,CSS样式表