I am working on an NES-style project in Godot 3.1 beta 9.
My native resolution is 256x240 and my sprite size is 16x16. I have use_pixel_snap
set to true
, display/window/stretch /mode
set to 2d
, display/window/stretch/aspect
set to keep
.
I notice that when I enter fullscreen, however, my player sprite has some strange pixel artifacts. It largely looks like it is supposed to, with the 16x16 sprite cleanly scaling up.
Unfortunately, sometimes there are a few stray pixels where they shouldn't be. If I move the player a little, they either go away, or change to new positions. I notice them more frequently when my sprite is facing left (during which the spite has flip_h = true
), but I also notice them periodically when moving right.
Here is an example:

(I had to take this photo with my phone, since Windows screencap doesn't work when Godot is fullscreen.)
The sprite should look like this:

What is causing these artifacts and how do I get rid of them?
I have confirmed that I have imported my assets using lossless compression.