• Hey Guest! Ever feel like entering a Game Jam, but the time limit is always too much pressure? We get it... You lead a hectic life and dedicating 3 whole days to make a game just doesn't work for you! So, why not enter the GMC SLOW JAM? Take your time! Kick back and make your game over 4 months! Interested? Then just click here!
  • Hello [name]! Thanks for joining the GMC. Before making any posts in the Tech Support forum, can we suggest you read the forum rules? These are simple guidelines that we ask you to follow so that you can get the best help possible for your issue.

Discussion How to remove image artifacts?

D

djrain

Guest
I have the "interpolate colors between pixels" setting on, but it's causing ugly black outlines on my sprites like this:
Screen Shot 2018-07-30 at 9.21.45 PM.png

Oddly enough, I've noticed that the problem isn't as bad for the same sprite when it is created through code (first one was placed in the room editor). See how this one, which gets created by the first one, looks better:

Screen Shot 2018-07-30 at 9.22.15 PM.png

I can't imagine why that would be, but it seems inconsistent anyhow.

From what I understand, the outline is due to the invisible edge pixels getting blended into the result, but I'm still not sure what would be the best way to fix it. I tried changing the alpha test value, which effectively removes the outline but also makes other areas look terrible... What's the best solution? How do you guys handle this? (Assume that turning interpolation off is not an option.)
 

The-any-Key

Member
Make sure your view size is the same as your port size. Or if you view size is 320x240 you need to x2, x3... to get the port size. Ex 640x480, 960x720...
 
D

djrain

Guest
Make sure your view size is the same as your port size. Or if you view size is 320x240 you need to x2, x3... to get the port size. Ex 640x480, 960x720...
I am setting the view and port to the same size, so I don't think that's the issue.
 

Jobo

Member
GMC Elder
In the sprite editor, tick "Premultiply Alpha" on the sprite and see if that helps
 
I

icuurd12b42

Guest
it's because your invisible color is black. interpolation interpolates the black with the white causing the gray edge. it's that simple... use the fill bucket with white alpha 0 and fill the black emptiness with white emptiness.
 
D

djrain

Guest
it's because your invisible color is black. interpolation interpolates the black with the white causing the gray edge. it's that simple... use the fill bucket with white alpha 0 and fill the black emptiness with white emptiness.
I've tried this, both in Aseprite and the GMS image editor, but I can't get it to work. Filling with a transparent color doesn't seem to be allowed.
 

Andrey

Member
In photoshop, make for a sprite outer stroke (styles -> stroke) of white color with a transparency of 1%. That solves it.
 

Pawel

Member
I have filled empty spaces using bucket tool and the white color.
I have set alpha to 1.
So the fill color was (255 255 255 1).
That worked for me in GMS2
 

Kubawsky

Member
I have filled empty spaces using bucket tool and the white color.
I have set alpha to 1.
So the fill color was (255 255 255 1).
That worked for me in GMS2
I've been searching for a solution to this and this methods worked for me.
 

Saurus

Member
I had a similar problem as djrain, but Pawel's this trick of using an alpha value of 1 for the transparent areas wasn't an option in my case, and I wasn't successful at creating a sprite with white in the transparent areas.

The only solution that worked for me in the end was going into the Game Options, and under Graphics, disabling "Interpolate colours between pixels".
 
Top