@paingpyi
Thanks for your kind words.
I was always sceptical about the point of grabbing sprite frames from several sheets, so I never used this feature in my project and thus I am kind of reluctant to implement it in SpriteGrabber.
I mean, the point of using sprite sheets is to have a group of graphics, that you are going to use in a game section, permanently loaded on memory and quickly readable. If you know that you are going to need spriteX inside a specific level, why don’t you just add it to that level’s sheet?
By calling sprites from different sheets that also include sprites which you are not going to use in a specific level, you are wasting a big amount of memory, since all the involved sheets (sheets, not just sprites) are being loaded in advance. It is much better to have a sprite included in several sheets, than loading a whole sheet to just get access on a subset of it. Most of the times, RAM (sheets in memory) is a more valuable resource than storage memory (app filesize).
Having said that, I always build my sheets not concept-wise but instead usage-wise, so that anything that I use in several sections in my game is always included in a general sheet that I load from the start of the game and keep it loaded until exit. Level sheets only include graphics that are not going to be used elsewhere in the game. This way, I keep assets memory to the minimum.
Cheers
PS: Have you ever played Zombieville USA? This game (made with Unity) has all of its assets included in a single spritesheet for performance reasons. Each separate sheet you are using costs an additional “draw” call to the GL engine. Have in mind that a good performing game has to have bellow 30 draw calls and each “display” object (image, textfield, shape, sheet) you are using is an additional draw call. [import]uid: 7356 topic_id: 3197 reply_id: 45396[/import]