TexturePacker 圖片打包工具講解與使用並且批處理打多包以及資源加密
TexturePacker這個詞從字面來說就是Texture(紋理) + Packer(打包)。它是一款把若干資源圖片拼接為一張大圖的工具。
手機遊戲開發中,為了提高圖片渲染效能,經常需要將小圖片合併成一張大圖進行渲染。如果手工來做的話就非常耗時。TexturePacker
就是一款非常不錯方便的處理工具。TexturePacker雖然非常優秀,但不是免費的。
使用TexturePacker最主要的好處是,我們做的遊戲最終要執行在Android手機或者蘋果手機上,而Android或者ios系統使用的是OpenGL ES來渲染。所以我們要針對OpenGL ES來進行優化。記憶體方面,OpenGL ES紋理要求寬和高都是2的n次冪的倍數。想一想,如果圖片的寬為33,而高為65,那麼圖片載入到記憶體後的大小為多少?考慮到寬和高都是2的n次冪,所以載入到記憶體後的大小是64*128。所以我們可以考慮將小的圖片拼成到的圖片,然後載入。渲染速度方面,OpenGL
ES要求切換的紋理少,所以將圖片拼成大圖片,這樣就減少了紋理的切換。
TexturePacker可以直接選定一個資料夾,將裡面的小圖片生成一個大圖片,並輸出plist檔案的工具。使用該工具,合圖就非常簡單了。
下面是使用流程(截圖):很簡單的,只需要的注意以下幾點就可以了。。。
第一部:點選Add Sprites按鈕新增圖片資源 如圖:
第二部:圖片資源導進來之後只需要做些簡單設定設定 如下圖
根據你的圖片資源大小來選擇合適的 Max size W/H
第三部:匯出生成 plist 和 .pvr.ccz 檔案 點選Publish按鈕如圖:
然後把 plist 和 .pvr.ccz 兩個檔案匯入專案就OK啦!!!
對於在專案中如何使用plist檔案生成動畫將會寫在下一篇文章。。
如有錯誤,請多多指正。
補充:批處理打多包
當我們把包的大小設定為1024*1024後,對圖片進行打包,而我們的圖片大小遠遠超過1024*1024的容量,那就只能打多個包出來,步驟就是手動新增圖片到一個包中,如果圖片超出容量則要一一手動的刪除,將多出的再打到下一個包中,就這樣一變一變的反覆試量著打包,很是不方便,尤其是對超大量的圖片資源,那就太要命了,而且出錯率又高。在此我們找到了解決的方法,應該算是自己的一個過失,對 TexturePacker 這個工具還是瞭解不夠透徹。看下面講解大家一起來學習下吧!!!
1.首先把我們的所有圖片匯入包中,設定為以上面講解之外再加一選項設定,如圖:
2.點選Publish生成plist檔案時,需要為包起名子,這時就有規格要求了,比如你的包名為:123_actRes1.plist 、 123_actRes2.plist ,等多包,這時我們只需要把包名寫成這樣123_actRes{n1}就好了。。如圖:
3.最終打出的包:
最後:資源包的加密(給出兩條連線上面講的很清楚,一個是官方英文版的,一個是中文翻譯的,學習了。。。)