Tiled Sprite Object Jitter With Smooth Camera Motion

I’m experiencing a strange jitter between tiled sprite objects as the camera moves to catch up to the character as illustrated.ForumQuestion1
ForumQuestion2
(Notice the line between the corner tile and floor tile)
I don’t know if this is a known issue or if I’m doing something wrong. I’m using “lerp” action for smooth camera movement. It happens in every corner. I’ve used a work around where the corner pieces are just regular sprites and not tiled sprites and that seems to mitigate the issue, however I’m not sure exactly what the issue is. Is this a bug?
Edit: It happens between any two tiled sprites. My settings are anti-alias and sprites are smoothed. It was way worse pixel perfect. I considered monitor refresh as a possible culprit, but I’m duel screening a 90s monitor and it does the same thing over there. (But looks and feels fantastic on a 90s monitor! :))

1 Like

I had the same problem but it is gone now. Don’t know it will work for you but my options are like this:

  1. scale mode: nearest
  2. round pixels when rendering (on)
  3. increase the lerp speed.
    last advice increase the minimum and maximum fps

This problem can be fixed by importing the image into Piskel and exporting it again from there. I don’t know why this works, but I fix it every time by doing it this way. I think it has something to do with png export settings. I have 2 exacly the same images, one exported from Krita (open source photoshop alternative) and one exported from Piskel. The one from Krita is a little bit bigger in size (not dimensions but actual file size) and it causes the line to appear. The other is from Piskel, which is a little bit smaller and this one doesnt have the line.

1 Like

Thanks so much guys! @Epicsleeper Workarounds are like that! ha. I will try the things you guys have posted and come back with an edit. Now, for an even more major issue… I made a boo boo and accidently designed some (as in quite a few…) time consuming assets at a much higher resolution… (expletive)

Edit 1: I tried to import and export from piskel and it didn’t do the trick. What I didn’t do was import it from a blank “Tiling Sprite Object”, let me try that… no luck there on my end. I’m sure it works with your settings, and maybe helpful for someone to try, especially if they aren’t already a month into the project and don’t have hundreds of images already in the editor. XD

Edit2: @kingwulfgar Yes, Thank you. I was almost certain I had tried those settings before, but you know what? I must have never tried “round pixels when rendering”. At one point I was importing pixel perfect, then went to smoothing because I felt it helped the issue (But didn’t solve it). Game looks and feels much better pixel perfect, because that’s how my assets are designed. Also the resolution thing turned out to be a non-issue. YAY! Now, I still have some jitter with repeating vertical lines. I am looking into increasing the min max fps right now. Side note: I had to go and turn off smoothing for every image. Played with frame rates a little. caused some glitches. HAHA. Set em at 20 min. 60 max. in the end.
Seems like RPG Maker Mv had the same issues with the flicker, AND they solved it some how. I think, and I’m reaching WAY back in memory, it had something to do with PIXIEjs, and screen refresh, or some such… I may have to go back and dig up that ancient thread and revisit it. I can probably get the people involved in the solution to help if my memory is correct.
They’re a friendly enough community over there… (Just not the mods. :D)

@Silver-Streak
I was correct that I’ve witnessed this before. I don’t know how, or what appropriate way I should message the devs about it, however, here is an ancient link to the same issue in a different engine.

While it may not be the exact issue, I suspect something like this:

is going on. She was hired from the early community into the development team, and eventually the fix was added to the default engine. (Just a little history as I understand it.)

So…I’m not sure why you @-ed me here, but: Yes, Some versions of RPG Maker use the same rendering engine (PixiJS).

However, note that the image you linked is talking about Tilemaps, which are not Tiled Sprites (What you’re mentioning), nor do they use the same rendering methods.

Tilemaps in GDevelop also do not have the rendering issue, as you can see here: https://game-previews.gdevelop-app.com/1643405936343-501586/index.html (This is a 160x90 resolution game, so make sure you hit f11 to full screen after it loads).

There is no real jitter involved in this example when I play it, nor lines/etc.

HOWEVER, Tiled Sprites have a fundamental rounding issue related to the base rendering engine, PixiJS. This is known and an open issue with the rendering engine’s project itself, and not something the GDevelop devs can realistically fix here. You can read more about that issue at this URL:

In general, you should avoid using Tiled Sprites for anything that needs to interpolate small pixel ranges. Meaning, in more direct terms: You should not used tiled sprites for any resource that is smaller than 80x80, on a game with a resolution under, say, 1280x720p. The smaller you go, the more likely you are to see the rendering issue.

1 Like

Lack of knowledge is why I called you. :smiley: (I’ve never interacted with anyone else “official” so to speak and I don’t even know who they are) but you’ve answered my questions adequately and I thank you.

Edit: Looking at your “Not-A-Vania” project example, I think I see what I need to do.

Edit: Yes actually. Lol. My first issue was a legitimate issue I suppose. My second was a resolution issue. Turns out single pixel lines in a grid like pattern just don’t look good at higher resolutions. Who’d have thunk it? :smile:

1 Like

I wonder if there is a difference in performance between a normal sprite and a tiled sprite?
Let’s say you place 1000 normal sprites vs. 1 tiled sprite with the same size as the 1000 normal sprites?
I do think there is, but I can’t find anything about it. Maybe you guys know more about this.

There will definitely be a performance difference, and again, if you need to use 1000 sprites to build a map, you should be using a Tilemap.

1 Like

Thank you for the response. I am currently using tiled sprites myself, but I will look into tilemaps as well.
I won’t be switching to 1000 sprites, that’s for sure haha :smiley:

Is there any information about LDtk file support for tilemaps? What stage is this at? Estimated time frame for implementation? (half a year, a year…). Any information.

I have a follow-up question about this. Do object instances also count? Let’s say you have 5 objects. You fill the map with 1000 instances of these objects. So in fact, you have just 5 sprites in the asset folder, versus a tilemap that is really large with the same 5 objects filing the tilemap. Does the tilemap still perform much better? I apologize if this makes no sense.

It is being worked on by a contributor, towards a bounty others and I have posted.

In progress

Nope.

You can follow along here, though: Ldtk file support for tilemaps in Gdevelop by blurymind · Pull Request #2828 · 4ian/GDevelop · GitHub

1 Like

It’s not LDtk, but I haven’t run into any major issues using tiled. There’s a written tutorial and some good videos, and it ain’t too hard. Also, Silver’s Not-A-Vania example uses it. Another thing I did that helped a whole lot with my jittery issue was to change all single pixel black lines to a very dark version of the tile color, and make my shadows and highlights 2 pixels wide instead of one. Then jack around with resolution and settings a whole lot, as after my last post I still had some issues after all. It just seems like smooth camera and pixel art don’t get along too well, as I found a whole bunch of the same on the Godot forums. I’ve implemented some work arounds that make it acceptable to me. I need that smooth camera for various reasons. If I had it all to do again, I would probably go with bigger assets and avoid single pixel lines for shading and detail.
The Vania camera within limits would probably work really well for most games. I did throw my tiles in there with the had lines and look at them. Of course it still did the ugly as the camera updated, but because it wasn’t smooth motion and constantly updating, it wasn’t as bad. Ultimately changing the design was probably the biggest visual improvement. What I suggest to avoid is single pixel solid lines first, at high contrast second and especially if they tile right next to each other.

1 Like