[need testing] Animated transformation masks rewritten!

Hi, all!

The last two weeks I spent on rewriting animated transform masks feature in Krita. My changes should fix a lot of bugs and crashes in animated transformation masks. So now I need your help with testing the new implementation of the transformation masks. Could you please help me with that and play with my custom packages a little bit?

Test Plan

Test non-animated masks

  1. Activate “Accurate with Instant Preview” mode in the transform tool
  2. Create a layer and add a transform mask (not animated)
  3. Try to transform that with Transform Tool
    • in Free Transform mode
    • in Mesh/Warp transform mode
  4. The transform tool and mask should behave “in expected way”
  5. Try undo these actions
  6. Repeat the mask editing steps (and undo) for different modes of the transform tool:
    • Fast
    • Accurate
    • Accurate with Instant Preview
  7. Try some weird user actions to check if the transform mask behaves in an expected way:
    • flatten the layer
    • flatten the image
    • paint on the source layer
    • move layers in the layer stack
    • use move tool over the mask
    • use move tool over the source layer

Test animated masks

  1. Activate “Accurate with Instant Preview” mode in the transform tool
  2. Create a layer and add a transform mask
  3. Add the first keyframe to the transform mask using “Animation Curves Docker”
  4. Try to transform that with Transform Tool
    • in Free Transform mode only
  5. Try to add a keyframe at a different time position using a button in the docker and transform it
  6. Try to use autokeyframing by selecting a different time and starting a trasnformation
  7. Try undoing and redoing these actions. Krita shouldn’t crash :wink:
  8. The transform tool and mask should behave “in expected way”
  9. Try some weird user actions to check if the transform mask behaves in an expected way (all actions except of the move tool should process all frames):
    • flatten the layer
    • flatten the image
    • paint on the source layer (at different time positions)
    • move layers in the layer stack
    • use move tool over the mask
    • use move tool over the source layer
  10. Check animation specific user actions:
    • change the time on the timeline (transform mask shoudl slowly update and interpolate the transform)
    • try to play animation
    • try to export video sequence

Known issues

  1. When doing final rendering (e.g. for export) transform mask is rendered in low-quality bilinear mode, ignoring the setting in the transform tool. That is not a regression, but still a bug (459530 – Animated transform masks use low-quality bilinear interpolation when doing final rendering)

  2. Transform masks regenerate the static image on every time change in the image. That is also not a regression, but still a bug (438768 – Animated transform masks regenerate on every time change unconditionally)

  3. Transform tool still allows you to switch into non-free-transform mode even when the transform mask is animated. In this case the transform mask ignores animation curves and behaves as if it is non-animated, until you switch back into free transform mose.

Packages

Windows: krita-5.3.0-prealpha-transf-masks-dk1.zip — Яндекс Диск
Linux: krita-5.3.0-prealpha-ad47e76c80-x86_64.appimage — Яндекс Диск

14 Likes

Okay, I have merged the patch into Krita-5.3-nightly, so from now on you can report any bugs directly on bugzilla (though pinging me here in the thread might also be a good idea)

2 Likes

my transformation mask going wrong after build 2260. the hand rotation of my character slide up and i have 8 layer with same problem. i try install old krita-nightly-x64-5.3.0-prealpha-4184632bfb-setup my transformation mask going fixed again. please check again what is wrong.

1 Like

Hi, @Lizard_Olmighty!

Is it possible to share the failing file with me privately? (you can use direct messages here on KA)

In my case, I use rotation mask transformation with a fixed body. and I sometimes trim to image size to stabilize the animation. But after I move from krita-nightly-x64-5.3.0-prealpha-4184632bfb or upgrade just 1 layer hand slides up so the movement looks not proportional and maybe the other layer looks short moving.
before I installed 4184632bfb there was the same problem but you fixed it.
I read on the forum someone told you.

Do I understand it right that you created a file in a version of Krita before 4184632bfb, and now, when you open it in a version after 4184632bfb, it looks differently?

Or you mean some bug that is present before and after that update? I don’t fully understand your explanation.

I can not reproduce the issue with the following steps:

  1. Open Krita 5.1.5
  2. Create a layer with a body
  3. Add a transform mask
  4. Create multiple frames on a transform mask that perform translation and rotation
  5. Save
  6. Open the resulting file in Krita 5.3.0-prealpha

The resulting file opens fine, the transformations look exactly the same. The only bug I can see is that when switching frames and Instant Preview enabled, the image jumps a bit to the top and then resets itself into a correct position. But it is not a dataloss :slight_smile:

yes look differently, I want send my file. I let fix picture and animation that error in new beta. sorry I crop 80 percent fix because that my nft project. I send my file through inbox?

Yes, you can send either using an Inbox here or directly to my email (you can find that in in the copyright header, e.g. here

I go there and confuse where is your email. can your write here?

Just use the inbox then :slight_smile:

inbox just receive jpeg not krita file

@Lizard_Olmighty I’ve sent you a Direct Message. Please read it.

It would be helpful to use a link to a file sharing service or website to share .kra files.

2 Likes

Hi, @Lizard_Olmighty!

Please test this package, when it completes the build:

https://binary-factory.kde.org/job/Krita_Nightly_Windows_Build/2273/

It should fix the issue with the offset in your files :slight_smile:

1 Like

Thank you for your hard work and response. I’ve used it and my animation is back to normal.

1 Like

Great! Thanks for testing! :slight_smile:

1 Like