2013年9月5日 星期四

用Texture Packer來製作Corona SDK可以使用的貼圖

記憶體對手機來說彌足珍貴。記憶體使用越少,遊戲或App的效能就越高。為了減少記憶體使用量、減少OpenGL ES呼叫貼圖的次數、利用圖像的透明區塊在同一張貼圖中塞下更多的圖像,以及讓顯示的圖片看起來不會失真,會使用各種軟體把程式裡會用到的圖像全部放進一張貼圖裡面,Texture Packer就是其中一款這樣的軟體。我之前就有在其他的網站介紹過怎麼在Cocos2D裡使用Texture Packer。今天針對Corona SDK,要來介紹怎麼樣用Texture Packer,來做出CORONA SDK可以使用的貼圖集。

1.首先請到Texture Packer的網站下載程式並安裝。
網址:http://www.codeandweb.com/texturepacker/

2.先把要用的圖拉進程式中,放進中間的空間裡,就會發現要用的圖都已經匯進來了

3.設定的部份,如下圖

Data Format: Corona SDK
Data Filename: 取一個名字,用.lua當結尾
Texture Format: PNG
Texture file: 通常取好Data Filename,這邊就會自動生成對應的png檔名
Image Format: RGBA4444
Dithering: FloydSteinbergAlpha




























4.按下上方工作列裡的的Publish按鈕,然後按OK


















5.把Step4生成的.lua檔和.png檔放進專案資料夾裡面

























6.在程式碼上寫上
display.setStatusBar(display.HiddenStatusBar) --隱藏狀態列
local sheetInfo = require("GamePlayImages") -- 生成的lua檔名
local myImageSheet =
    graphics.newImageSheet( "GamePlayImages.png", sheetInfo:getSheet() )
    -- 第一個參數是生成的png檔
local background =
    display.newImage( myImageSheet ,              sheetInfo:getFrameIndex("GamePlayBackground"))
    --真的圖片檔名
background.x = 160
background.y = 240



7.發現圖片已經被我們放到螢幕上了。


沒有留言:

張貼留言