Traditional Sprite sheets or Spriter SCML file?

Discussion and feedback on Construct 2

Post » Wed Feb 10, 2016 10:16 pm

Are there any advantages to using one over the other? Performance? File size?
B
7
S
2
Posts: 110
Reputation: 927

Post » Wed Feb 10, 2016 10:37 pm

It depends on the effect you are after.... Spriter permits blending between different animations and give a smoother animation effect than sprite sheets can (in most situations), so the final animation appears of a high standard but uses up only a small amount of memory. However, Spriter has a performance overhead - you can't have a large number of Spriter objects running even on desktop without performance being impacted. There is also an instantiate time for Spriter objects, so that they might appear up to a second after the layout starts (work arounds are possible, though, by delaying fade-in etc). The best thing to do is give Spriter a try and see if you like what it can do.
A big fan of JavaScript.
B
76
S
20
G
74
Posts: 2,255
Reputation: 46,484

Post » Thu Feb 11, 2016 3:06 pm

Colludium wrote:It depends on the effect you are after.... Spriter permits blending between different animations and give a smoother animation effect than sprite sheets can (in most situations), so the final animation appears of a high standard but uses up only a small amount of memory. However, Spriter has a performance overhead - you can't have a large number of Spriter objects running even on desktop without performance being impacted. There is also an instantiate time for Spriter objects, so that they might appear up to a second after the layout starts (work arounds are possible, though, by delaying fade-in etc). The best thing to do is give Spriter a try and see if you like what it can do.


Thank you for your informative response.
B
7
S
2
Posts: 110
Reputation: 927

Post » Sat Feb 13, 2016 6:32 am

Colludium wrote:It depends on the effect you are after.... Spriter permits blending between different animations and give a smoother animation effect than sprite sheets can (in most situations), so the final animation appears of a high standard but uses up only a small amount of memory. However, Spriter has a performance overhead - you can't have a large number of Spriter objects running even on desktop without performance being impacted. There is also an instantiate time for Spriter objects, so that they might appear up to a second after the layout starts (work arounds are possible, though, by delaying fade-in etc). The best thing to do is give Spriter a try and see if you like what it can do.


To remove the instantiate time for Spriter objects, just create the first instance for all of them in the first layout during your game intro using an out of screen coordinate.
Remember to stagger their creation to avoid any bugs.
You will find any further creation and usage of all Spriter objects in the game to be super fast and have no issue whatsoever.

For a demonstration of what I just said, just play my game demo and see for yourself.
B
36
S
18
G
11
Posts: 248
Reputation: 8,694

Post » Sat Feb 13, 2016 1:08 pm

@Sethmaster - good point - from my experimenting it appears that the instantiate time only applies to the first instance that is created using events. I wish I'd realised this during my creation of Umbra.... Never too old to learn lol.
A big fan of JavaScript.
B
76
S
20
G
74
Posts: 2,255
Reputation: 46,484

Post » Sun Feb 14, 2016 3:15 am

so @Sethmaster - all your street posse characters are made using Spriter then? Apart from the workaround for instantiate time, have you noticed any performance overhead issues like @Colludium? I'm thinking that maybe, since your animations are instant instead of tweened, that might cut down on some resources. Is that the case?

(sorry to high-jack this post..)
B
74
S
19
G
9
Posts: 377
Reputation: 9,258

Post » Sun Feb 14, 2016 3:37 am

mudmask wrote:so @Sethmaster - all your street posse characters are made using Spriter then? Apart from the workaround for instantiate time, have you noticed any performance overhead issues like @Colludium? I'm thinking that maybe, since your animations are instant instead of tweened, that might cut down on some resources. Is that the case?

(sorry to high-jack this post..)


Yes. all of it is made from Spriter.

Regarding overhead, I do know that the last time I created over 10,000 Spriter objects at one time (because I tried use Spriter haphazardly for everything including tiles), there is a lag. The reason so many is created at once is because most of the tile Spriter instances have around 50 objects in them due to my mistake in creating a unique for each different tile in Spriter despite the fact that tiles usually don't have animations and this amount can be reduced to merely one via charactermaps.

By using charactermaps not just for the characters but also for other objects as well, I manage to reduce the amount of objects present at any time significantly. Though for the tiles, I am still not using Spriter for them due to aversion after the last mistake.

Yeah, all the animations are instant and not tweened due to the pixel art. So my experience might differ from others who used tweening. I recommend you try Spriter yourself to see whether the performance ovehead affect your game or not.
B
36
S
18
G
11
Posts: 248
Reputation: 8,694


Return to Construct 2 General

Who is online

Users browsing this forum: Cubeeo and 9 guests