2012-08-11 43 views
0

所以,我試圖讓我的Flash「遊戲」運行更順利。我爲每個對象使用單獨的PNG文件來創建播放器動畫。AS3 - 使用精靈表來優化我的遊戲

我聽說過有些地方使用這樣的單個文件很糟糕。

我聽說過使用精靈表來壓縮數據並減少內存使用量。

也許我錯了,但有沒有辦法將我的所有PNG圖像(透明度)合併在一起,以便flash可以繼續單獨使用圖像?

我真的很想找到方法讓我的程序運行得更順利,以便能夠在屏幕上顯示大量圖像而沒有太多滯後。關於如何讓事情變得更好的任何想法?

Here is an example of a tile based game I'm trying to make that is having serious lag issues.

回答

0

使用Photoshop或類似的軟件,你將所有的動畫幀合併成一個文件。文件的大小和形狀可以是任何你想要的,但是每個'幀'應該是相同的大小,以相同的順序並且它們之間沒有空間。例如,假設每個幀都是25x25像素,您的步行動畫是10幀,並且您希望最終的.png是一個長條。您將製作一個尺寸爲250X25或25X250的新.png,然後按動畫順序將所有幀插入該文件。如果要將它們嵌入顯示對象或加載的文件,則取決於您,但是一旦擁有它們,您只需使用BitmapData將輸入文件分解爲新的BitmapData對象,然後根據需要顯示它們。再往前走一步,讓我們說大多數(如果不是所有的)角色都有散步動畫和動作動畫,你可以讓一個類來處理加載角色動畫,而圖像文件的第一行將是散步動畫,第二行將是動作動畫。

+0

只是一個供參考,你不需要打破他們備份。您可以在stage3d中使用'scrollRect'或類似的技術來僅顯示一段位圖 – 2012-08-11 12:43:24

1

TexturePacker允許合併png文件。它會生成兩個文件:png和配置文件。 Png只是合併的圖像和配置文件是txt文件,您可以加載到您的瑞士法郎,解析和分解您的圖像使用它。配置可以針對不同的遊戲引擎以各種格式。