How to get rid of dodder/woobling while animating position/scale/zoom

I want to understand what are the reasons, that there is such doddering/woobling of either GUI or scene while zooming camera in and out or animating scale of/moving objects and how to get rid of this.

Scaling GUI nodes and GUI text nodes:

com-crop%20(1)

Moving and scaling camera over sprites:

Honeycam%202020-04-01%2021-13-48

1 Like

Hi there.

I am not an expert and I not sure I understand exactly what you are referring to. But I think that the strange doddering of the image is due to the changing in the number of onscreen-pixels covered by one pixel in the art. It is an approximation problem: I may guess you are using the “nearest” filter to draw the pixel art on the screen, and the onscreen-pixels does not “spring” at the same frame to the next pixel in the art. (I hope I am being clear…)

And indeed I guess slow scale animation is very hard with pixel art.

Anyway, just my idea, I may be wrong.

3 Likes

Hi! Thanks for your response! Unfortunately, I can’t use linear texture filtering for my pixel art (hero has a custom sprite material):

And yes, I am aware that it is indeed a problem with approximation and I suppose that when I’m animating something it operates on double and it doesn’t fit well with pixel art “quantized” values - but there are pixel art games without such problems - so is there a solution for this? I can’t find it because I can’t identify the problem and name it properly :confused:

Yes, you cannot use “linear”.

I think that the problem is, in a sense, unsolvable. Could you please show me a game doing slow scale animation with pixel art? I am really curious. :slight_smile:

1 Like

This can probably help:

2 Likes

@roccosaienz I don’t see such woobling in any pixel art I know, Dead Cells, Death’s Gambit for example have a very fluid background movement, I can’t think of any that has such problems

@gianmichele thanks for the link! I’ll check this :wink:

Yes! The Pkeod solution avoid the problem. I have quickly read it, if I understand correctly it first draw offscren with nearest and then onscreen with linear to smooth the scaling.

@Pawel yes, you are right! sorry, probably they are using something similar to Pkeod solution.

1 Like