• 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!

Pixel Sprites Scaling issues that happen in full screen

Plubu

Member
Hello everyone, hope you're all safe,

Now I have an interesting problem with pixels sprites scaling weirdly, causing pixel distortion and all of that you probably know about.

I've seen PixelatedPope's videos about resoultion and scaling, but they were in GMS 1, tried it, changed the codes to work on GMS2, I think the code themeselves work but it could be on the sprites themselves.

Here's a video showing an example of one of the sprites' breaking out, look at the player's armored boots.

GML:
//Camera Object in the initilization room

//Display Settings
IdealWidth = 0;
IdealHeight = 540;

Aspect_Ratio = display_get_width() / display_get_height();

IdealWidth = round(IdealHeight * Aspect_Ratio);

//Check for Odd Numbers
if (IdealWidth & 1)
{
    IdealWidth += 1;   
}

//Build a camera at (0,0), with size 640x480, 0 degrees of angle, no target instance, instant-jumping hspeed and vspeed, with a 32 pixel border
camera = camera_create_view(0, 0, IdealWidth, IdealHeight, 0, -1, -1, -1, 32, 32);

for(var i=1; i<= room_last; i++)
{
    if (room_exists(i))
    {
        room_set_camera(i, 0, camera);
        room_set_viewport(i,0,true, IdealWidth, IdealHeight, IdealWidth, IdealHeight);
    
    }
}

surface_resize(application_surface, IdealWidth, IdealHeight);
window_set_size(IdealWidth, IdealHeight);
My current view settings.

1611186581540.png


Many thanks for your time.
 

Plubu

Member
I've managed to fix this issue.

Try to use floor() on your VerticalSpeed.

GML:
y += floor(VerticalSpeed);
 
Top