What would cause a 2D flipbook not to play through its frames While connected to a blueprint?

Hey

Im using paper 2D to make a sidescroller and I have a sprite flipbook that plays fine adding it to my level on its own, But after I connect it to jump of my character it does not cycle through its frames. Also replacing it with a different flipbook in blueprint it does play all frames.

I cant see any difference in 2 flipbooks for one to work but other not (except 1 has 7 frames other that works has double that). Could it be a bug with engine? I updated to latest version to see if it would help but it did not.

Hey Genesislozenge,

I might need to look at Flipbook and its Sprites to see what’s happening here. Would you feel comfortable zipping it and either attaching it here or uploading it somewhere and sending me a download link? Additionally, I’d like to see an image of how you’re setting Flipbook in your Blueprint. Thanks!

Thanks For getting back to me. I put a screenie and frames, sprites and flipbook in this . Flipbook.
Hope that links ok.

Thanks Genesislozenge. I dropped those assets into a default Sidescroller 2D template project. references were broken, so I’m guessing folder structure is different in your project. I remade flipbook using textures you included, and was not able to reproduce issue when I used flipbook in MyCharacter blueprint.

Have you tried making a new flipbook using same assets? Or recreating Sprites and making a new Flipbook from them? If that doesn’t work, I may need to see your project to narrow down cause. If you can upload it somewhere and get me a link to download it, I can look into it further. You can send me link privately via forums, if you’d prefer.

Yea I had a go on template with only sprites and flipbook and it worked but redoing sprites and flipbook doesnt help in actual game project. I could upload and send you what I have in a private messege My project folders a bit of a mess not sure if it adds to my problem can you reorganise without messing things up? Thx

Probably. entire project folder and upload it to someplace like Dropbox or Google Drive and send me a link via PM here:

Cheers , it appears like its only really happening on flipbooks when connected to character blueprint. Other blueprints with it connected play throught it.

Hi Genesislozenge,

We were able to reproduce problem in your project, but I’m still not certain what is causing it. At behest of our main Paper2D developer, I have entered a bug report and included your project for him to take a look at (UE-7449). I’ll let you know as soon as I see an update.

Hi Genesislozenge,

I had a look at this issue today and it is happening due to how your BP is set up. You explicitly set flipbook when On Jumped is called, but it also gets set every frame by call to UpdateAnimation from input axis event, and via tick (when jumping) event. These two things are fighting with each other.

Setting a flipbook component to a flipbook it is already playing leaves play position alone, but setting it to a different flipbook starts timer over at 0, so what you are seeing is this:

  • Jump on frame 0: Set to Jumping, resets time to 0
  • Input event on frame 1: Set to Idle or Running, resets time to 0
  • Tick on frame 1: Set back to Jumping, resets time to 0

So time never accumulates while jumping.

Instead, you should create a Boolean variable named IsJumping, and set that true when OnJumped happens and false when OnLanded happens, then use that with a second Select node to pick Jumping animation, instead of output of first select node.

Cheers,
Noland

1 Like

Oh, thank you for this. I was trying to get my character to jump, and I just copied the select switch from the Paper2D example that was used for running and idle, without realizing that by doing so I was setting the state to always be forced on idle when not moving. The simple solution was to only change to the jump animation when in air, and do nothing on false so that it reverts back to the idle/run selection. Totally makes sense in hindsight, but I was still confused.