GameMaker Unwanted motion blur

S

Shazard Bansraj

Guest
I need help with unwanted motion blur. When my character's speed is high, he blurs while moving. On normal speed (phy_position_x+=1) there is no blur; however he moves too slowly across the screen. How do I get my character to move across the screen faster without blurring? I tried adjusting the screen resolution, scaling and frame rate.
 

Evanski

Raccoon Lord
Forum Staff
Moderator
There should be an option in Global game settings > (The platform your using) > Graphics > and make sure [Interpolate colors between pixels] is unchecked. That should fix your problem. Note that it will make your sprites look Sharper.
 

TheouAegis

Member
You said his speed is greater than 1. What is the speed values you're using? If you're using fractions, then you have pixel rounding. If you're using whole numbers, then you have monitor ghosting.
 
S

Shazard Bansraj

Guest
There should be an option in Global game settings > (The platform your using) > Graphics > and make sure [Interpolate colors between pixels] is unchecked. That should fix your problem. Note that it will make your sprites look Sharper.
It's already off. I only get the blurring during movement.
It sounds to me like you are talking about a probelm caused by your monitor. Are you able to take screenshots of this problem?
It's not my monitor because other similar games do not have the same blur.
You said his speed is greater than 1. What is the speed values you're using? If you're using fractions, then you have pixel rounding. If you're using whole numbers, then you have monitor ghosting.
In the video the first move speed is 1 and the animation barely has any blurring, if any at all. In the second part of the video, I set his move speed as 5. The faster he moves, the more he blurs.
 
Last edited by a moderator:
Have you tried moving your character without using the physics variables?
Found this in the manual about the phy_position_x:
Please note that the physics world may present errors when instances are moved by directly setting this variable as it will interrupt the continuous simulation.
If you are manually changing the physics locations, then perhaps you should just be using the non-physics methods of movement by just setting x and y rather than phy_position_x and phy_position_y.

Do you absolutely have to use physics? And if so, do you need to override the phy_position_x or phy_position_y rather than just letting the physics do it's own thing?
 
S

Shazard Bansraj

Guest
Have you tried moving your character without using the physics variables?
Found this in the manual about the phy_position_x:

If you are manually changing the physics locations, then perhaps you should just be using the non-physics methods of movement by just setting x and y rather than phy_position_x and phy_position_y.

Do you absolutely have to use physics? And if so, do you need to override the phy_position_x or phy_position_y rather than just letting the physics do it's own thing?
I just tried it. It's the same, unfortunately.
 
You would have told us if you were trying to draw some kind of a trail, wouldn't you? So I presume it has nothing to do with that.

This is an odd one, it's not the usual suspects.
 
S

Shazard Bansraj

Guest
You would have told us if you were trying to draw some kind of a trail, wouldn't you? So I presume it has nothing to do with that.

This is an odd one, it's not the usual suspects.
Definitely not trying to get a trail. I'm comparing my game with Wizard of Legend. In WoL, the character sprite is perfectly clear even while sprinting. However, my character blurs if he moves too fast. I'll see if I can get some better images to explain.
 
are you able to get just a regular old screenshot (not video) of the problem? I want to make sure what we see in the video isn't some kind of artifact in the video itself. But if you are also seeing it with your own eyes, that seems unlikely.

It's not your shadow malfunctioning somehow, is it?
 
S

Shazard Bansraj

Guest
Hmm... well now we have to distinguish between whether it is an illusion or monitor defect and coincidental video artifact, or a real drawing problem that for some reason wont show up in a screenshot.

If you slow down the room speed dramatically, do you still see the "blur"?

By the way, I just noticed that you recorded your video on a phone or camera. So if the problem is your monitor, it would show up in the video as well.
 

TheouAegis

Member
have you tried actually adding a background picture? The video you showed seems like it has just the character on a white background.
 
S

Shazard Bansraj

Guest
Hmm... well now we have to distinguish between whether it is an illusion or monitor defect and coincidental video artifact, or a real drawing problem that for some reason wont show up in a screenshot.

If you slow down the room speed dramatically, do you still see the "blur"?

By the way, I just noticed that you recorded your video on a phone or camera. So if the problem is your monitor, it would show up in the video as well.
Movement in general is always blurry no matter how much I adjust frame rate. I'm not sure if it is an optical illusion because of the speed of the character's movement but I know that other games don't have this same off-putting blur.

have you tried actually adding a background picture? The video you showed seems like it has just the character on a white background.
That's a bg image (a sprite on an object). It looks white because of the screen brightness.

Thanks to everyone for all your input. I hope we can solve this. Maybe I'm doing something wrong.
 

kupo15

Member
My thought is that Theou is on the right track with the background. I've experienced ghosting at mid-higher speeds as well but I think its an optical illusion. That is why its not showing up in your screenshots.

It mostly occurs when the background is solid and most of your background is solid and I notice it when I'm prototyping things in classic programmer art, a box on a gray background but it goes away when I add some background to it. I would guess that if you had more going on in your background than it mostly being the default gray you won't be seeing it.

If its not an illusion then perhaps maybe the monitor exacerbates that effect if its not of the best quality, I'm not sure. I know my monitor isn't the most high end but when I add an actual background it goes away. Try adding a more varied design to your background and see if it still happens. Anything will do, even scribbling a solid pattern and tiling it as a test.

Googled ghosting:
"When describing an LCD or flat-panel display, ghosting is used to describe an artifact caused by a slow response time. As the screen refreshes, the human eye still perceives the image previously displayed; causing a smearing or blurring visual effect."

I think your lack of background is making this more pronounced
 
Last edited:

TheouAegis

Member
As I said too, consider inverse ghosting. Certain monitors or video drivers or something have what is essentially motion blur correction. With ASUS monitors/drivers, it's called trace free. ...It's basically a threshold setting that attempts to compensate for ghosting, but sometimes it can overcompensate. It'll typically be either 40 or 60. If you can find it, tweak it little by little until the ghosting goes away.

If the shadow/trail is roughly the same color and only a wee bit darker than the sprite, it's probably normal motion blur/ghosting. If the shadow/trail is significantly darker like drop-shadowing, then it's probably inverse ghosting.
 
The WoL video is not blurring the character because he is always centred on the screen, meaning he is literally not moving, the background is moving around him (hence why the background blurs in WoL for Theou). Your character moves while the background remains static, thus your character 'seems' blurry. Either center him on the screen and have the camera follow him pixel perfect, or put up with the extremely mild 'blur' that you're talking about.
 
S

Shazard Bansraj

Guest
I can't see any blur on my monitor, although the quality of the video is not good.
I didn't expect Twitter to lower the quality so much. My character's movement speed wasn't too high so the blur is limited. You can still see it in the glasses. Perhaps your monitor is superior.

The background in WoL blurs horribly for me in that video.
I also noticed the background blur. However, I feel like it's more aesthetically pleasing to blur the background than the character.

The WoL video is not blurring the character because he is always centred on the screen, meaning he is literally not moving, the background is moving around him (hence why the background blurs in WoL for Theou). Your character moves while the background remains static, thus your character 'seems' blurry. Either center him on the screen and have the camera follow him pixel perfect, or put up with the extremely mild 'blur' that you're talking about.
I think this is the conclusion. Even though the blur is mild at this movement speed, I believe that these small things can add to whether a player finds the game appealing.

Thank you all for your input! If you have any further suggestions, please let me know!
 
D

Deleted member 13992

Guest
Try rounding your object/view positions with round(). See if that helps.
 
Shazard Bansraj said:
Even though the blur is mild at this movement speed, I believe that these small things can add to whether a player finds the game appealing.
That's true and if it's bugging you, obviously it's worth it to look for a fix. Sometimes, though, I like to lean into things like this. As they say "That's not a bug, it's a feature". Something like this could inspire you to create a cool visual style that counteracts the blurring of the character (maybe with your own custom programmed motion blur or a unique art style that looks good regardless of whether it blurs or something).
 
Top