Frames are skipped at high speeds when they shouldn't be

If a speed below 35-39 or so is used, then frames are skipped semi randomly.
While this also happens with some browsers and software, in others it does not. For example Window’s photo viewer will view gifs with fast speeds without skipping.

That said, in game engines the programmer has the ability to ensure that frames are not skipped, allowing you to show an image for 1 frame, 2 frames, etc. However because Aseprite skips frames a bit randomly, it is a bit difficult to test fast frame timings for games.

2 Likes

Are you by any chance using the timeline’s Play button to preview your animation? If you are, make sure you use the one on the preview window instead. The timeline play button causes every frame’s data to be loaded in for editing every time the frame appears, which is a lot less performant and is much more likely to result in skipped frames and otherwise incorrect frame durations. The preview window’s Play button just plays the animation, and I haven’t noticed any timing issues with it.

It’s also worth keeping in mind that for frame durations below 17ms, you’re also likely to be running into timing issues due to your monitor’s refresh rate, but that’s something that’ll be an issue in-engine as well.

It skips frames in both.
Also, the issue is not present in the windows photo viewer, or within Gamemaker, when I program it to specifically play 1 frame per second, or 2 frames per second, etc.

It’s also skipped in 60fps frame capture, in everything were it visibly skips. So I can confirm that the frame actually just isn’t being displayed in software where it’s being skipped, and within Aseprite.

2 Likes

Bumping this thread because this is still an issue. It makes my 33ms (30fps) animations seem choppy when they aren’t. When I have 3 frames or so out of 16 drawn, playing the animation seems to only show a random 1-2 of the 3 frames a lot of the time, which suggests that Aseprite’s preview framerate is significantly lower than 30fps for some reason.

While I don’t expect Aseprite to play these animations with perfect frame pacing or to animate quickly when playing through the timeline, I do expect it to be able to at least render a 30fps animation without skipping frames in the preview window.

3 Likes

Yeah, I wish this would get more attention, because it’s one of the few core problems with Aseprite at the moment from a usability standpoint.

This is a whole separate issue, this thread is about the fact that Aseprite apparently runs at too low a framerate to preview fast animations. There are different threads about different ways to do timing.

Yeah, you’re right. Edited my post.

That said, I’d like to know what actually causes it, since other apps and software have this issue as well. Some solve it and some don’t, but none of them seem like they’re too “slow” to display the right fps. It can sometimes skip 33ms frames, which is 2/60 frames, so like you said it’s not hitting 30fps.

Other solution would be to implement anti-skipping so that frames are required to display for at least 1 animation playback update.

2 Likes