smooth movement without motion blur
#1 Members - Reputation: 671
Posted 09 November 2012 - 09:12 PM
#2 Members - Reputation: 634
Posted 10 November 2012 - 12:23 AM
http://gafferongames...-your-timestep/
if your physics or any counters are running in such a fashion: if (timer > last_timer) counter++;
then you will have jumpy objects, camera and many other things
personally, i use a floating point time step and no integral counters, but another solution is to use accumulation
there are many delta frametime / timestep tutorials out there
hope this is what you needed
Edited by Kaptein, 10 November 2012 - 12:26 AM.
#3 Members - Reputation: 671
Posted 10 November 2012 - 12:29 AM
you might need to look at this:
http://gafferongames...-your-timestep/
I actually have read that article already and my timestep is fixed. The problem I am encountering is purely graphics based what happens is when the camera is panning quickly things move great distances in one frame causing a jump. What I want to do is smooth out that jump and motion blur is the only way I know of.
#5 Members - Reputation: 523
Posted 10 November 2012 - 01:00 AM
Could you take a FRAPs video of it or something else to show what you mean?
Edited by Frenetic Pony, 10 November 2012 - 01:01 AM.
#6 Moderators - Reputation: 13502
Posted 10 November 2012 - 01:25 AM
Inconsistent frame-rates can make things look really bad and choppy. This is because, as explained in the link below, the dt value that you use is the measured time of the previous frame, but you're using that as a prediction of how much to move objects for the next frame. If the dt values are inconsistent, then this prediction isn't valid.
http://bitsquid.blogspot.com.au/2010/10/time-step-smoothing.html
#7 Members - Reputation: 3503
Posted 10 November 2012 - 02:06 AM
Motion is an illusion. You need your frames to be similar enough so that when they are played back, you get the illusion of one image bleeding into the other and creating a smooth motion. The more your images change over time, the better this illusion holds up.
When your images are too different, it doesn't matter what the frame rate is. You are just jump cutting between different pictures. It becomes like a quick slide show.
#8 Members - Reputation: 523
Posted 10 November 2012 - 03:06 AM
Is it maybe a jump in delta-time values? If you print out your DT values, are they all pretty consistent frame-to-frame, or are there some frames where there's a drop or spike in times?
Inconsistent frame-rates can make things look really bad and choppy. This is because, as explained in the link below, the dt value that you use is the measured time of the previous frame, but you're using that as a prediction of how much to move objects for the next frame. If the dt values are inconsistent, then this prediction isn't valid.
http://bitsquid.blog...-smoothing.html
He said it was V-synced, it could just be frame dropping. Any dip below V-sync will today avoid tearing and just drop to the next frame, or if it's bad enough several frames.
I.E. best guess is your game isn't running at 75fps really, and forcing V-sync is exacerbating what might not be that bad if you just turn it off. Beyond that, no there is nothing beyond motion blur to "smooth" anything. Not that it's that horrible or anything. If you keep your values for motion blur under control it probably wouldn't be that noticeable.
Edited by Frenetic Pony, 10 November 2012 - 03:07 AM.
#9 Members - Reputation: 671
Posted 10 November 2012 - 06:53 AM
This isn't a problem unique to games. Regardless of your frame rate, if you pan your camera too quickly, you are going to get tears and / or stuttering.
Motion is an illusion. You need your frames to be similar enough so that when they are played back, you get the illusion of one image bleeding into the other and creating a smooth motion. The more your images change over time, the better this illusion holds up.
When your images are too different, it doesn't matter what the frame rate is. You are just jump cutting between different pictures. It becomes like a quick slide show.
This is definitely the problem I'm experiencing. So it seems pretty much that motion blur is the only way to minimize it.
#10 Members - Reputation: 3503
Posted 10 November 2012 - 05:48 PM
A game running at 120hz can't move it camera twice as fast as a game running at 60hz. If you want things to read correctly to the viewer, you have to move your camera only a certain amount over a period of time (not frames).
If not, do something else, like a jump cut, or fade from destination 1 to 2.
#11 Members - Reputation: 1237
Posted 12 November 2012 - 02:38 AM
But what do you have against motion blur, apart from its terrible computational burden? How can you say it looks bad?
#12 Members - Reputation: 322
Posted 13 November 2012 - 12:37 PM
I really don't like the way motion blur looks
There are a number of different approaches to motion blur and a number of variables that can be tweaked which will change the overall 'look'; for smoother camera motion you can use a simple camera-only motion blur post process and adjust the blur kernel size to balance smooth motion against a blurry image (tutorial here). I find that at around 60Hz the effect isn't noticeable beyond making the camera motion look more fluid.
But what do you have against motion blur, apart from its terrible computational burden
Depending on the implementation it's really not very computationally expensive.






