Cocos2d-x:TexturePacker的使用

什麼是TexturePacker

>TexturePacker這個詞從字面來說就是Texture(紋理) + Packer(打包)。它是一款把若干資源圖片拼接爲一張大圖的工具。它由一位叫做Andreas Loew的老外開發。他的推特帳號是@CodeAndWeb

下載地址,http://www.codeandweb.com/texturepacker (這裏有個破解版的,不過建議大家儘量買正版吧,尊重知識產權。Windows :http://download.csdn.net/detail/azhou_hui/5547485  MAC  http://download.csdn.net/detail/gohome0620/6476929



爲什麼需要TexturePacker?

>回答這個問題之前,說說題外話。

如果你是遊戲程序員,你應該知道openGL載入紋理圖片的時候,所用內存是會自動擴張到2的n次方的。比如,如果你的資源素材是10×10px,載入後,將會按16×16規格載入圖片。如果資源素材是64×65,那麼就會按照64×128載入了。假設資源是RGBA8888的圖片格式來算,(255,255,255,255)代表(r, g, b, a),一個點就使用了8位×4=32位。相當於4個byte。按剛纔最後一種情況,你浪費的空間是64×(128-65)×4 /1024 = 15K,別說我的內存你無所謂。。。移動設備上的遊戲,內存還是喫緊。理論上,如果每一張圖的長寬都恰好是2的n次方數值,那很完美,沒有任何浪費。但是,你懂的。所以我們需要把很多小圖拼接到一張大圖裏,比如(2048×2048)然後到代碼中取其所需。這樣,浪費掉的空間就很小了。

OK,你說你不懂openGL,那你想想網頁設計師前臺製作css的時候,爲了提高載入速度,往往把很多小圖拼接成一張大圖,一次載入,減少I/O,提高速度。


如何使用TexturePacker?

>認識TexturePacker的界面
Data Format:導出什麼引擎數據,默認cocos2d,下拉列表中有很多,基本常用的引擎都支持了
Data File :導出文件位置(後綴名.plist)
Texture Format:紋理格式,默認png
Image format:圖片像素格式,默認RGBA8888...根據對圖片質量的需求導出不同的格式
Dithering:抖動,默認NearestNeighbour,(如果圖像上面有許許多多的“條條”和顏色梯度變化)將其修改成FloydSteinberg+Alpha;
Scale: 讓你可以保存一個比原始圖片尺寸要大一點、或者小一點的spritesheet。比如,如果你想在spritesheet中加載“@2x"的圖片(也即爲Retina-display設備或者ipad創建的)。但是你同時也想爲不支持高清顯示的iphone和touch製作spritesheet,這時候只需要設置scale爲 1.0,同時勾選autoSD就可以了。也就是說,只需要美工提供高清顯示的圖片,用這個軟件可以自己爲你生成高清和普清的圖片。
Algorithm TexturePacker:裏面目前唯一支持的算法就是MaxRects,即按精靈尺寸大小排列,但是這個算法效果非常好,因此你不用管它。
Border/shape padding: 即在spritesheet裏面,設置精靈與精靈之間的間隔。如果你在你的遊戲當中看到精靈的旁邊有一些“雜圖”的時候,你就可以增加這個精靈之間的間隔。
Extrude: 精靈邊界的重複像素個數. 這個與間隔是相對應的--如果你在你的精靈的邊邊上看到一些透明的小點點,你就可以通過把這個值設設置大一點。
Trim: 通過移除精靈四周的透明區域使之更好地放在spritesheet中去。不要擔心,這些透明的區域僅僅是爲了使spritesheet裏面的精靈緊湊一點。--當你從cocos2d裏面去讀取這些精靈的時候,這些透明區域仍然在尋裏。(因爲,有些情況下,你可能需要這些信息來確定精靈的位置)
Shape outlines: 把這個選項打開,那麼就能看到精靈的邊邊。這在調試的時候非常有用。
AddSprite:添加圖片Add Folder:根據文件夾添加圖片
Publish:導出資源文件(.plist和png)


>打開TexturePacker



add folder 直接添加文件夾 ;或者add Spites添加圖片


>然後就是你自己的一些配置了


>最後


該保存了。在data file處填入你要的plist文件路徑,在texture format處選擇你要的圖片格式,在texture file填入你要生成的圖片路徑。(其他還有很多細節的設定,請嘗試體驗幾次就明白怎麼用了)另外,最後,點擊菜單條的publish按鈕,哦了。之後你可以利用它着手製作一款偉大的遊戲了!


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