Motion Blur?

Post a reply

Smilies
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :geek: :ugeek: :!: :?: :idea: :arrow: :| :mrgreen: :3: :wub: >:( :blergh:
View more smilies

BBCode is OFF
Smilies are ON

Topic review
   

Expand view Topic review: Motion Blur?

Re: Motion Blur?

by Caligari87 » Tue Dec 11, 2018 9:09 am

Interestingly enough, it does, and I was not aware. I'll give that a shot when I'm home.

8-)

Re: Motion Blur?

by Get Phobo » Tue Dec 11, 2018 8:34 am

Caligari87 wrote:... as there's literally 10x my monitor refresh rate which could be used to temporally smooth the experience instead of going to waste.
You might want to check out NVidia's Fast Sync option if your hardware supports this. (Another question would be if GZDoom supports this. It does work with Adaptive Sync very well, anyway.)

Re: Motion Blur?

by Graf Zahl » Tue Dec 11, 2018 8:33 am

Viable or not, my tag still states what is needed here. Find someone willing to code it and we may be in business.

Re: Motion Blur?

by Caligari87 » Tue Dec 11, 2018 8:27 am

Bumping because I think this is really a viable feature that could add a lot in certain situations. Recently I realized my monitor is only 60hz, meaning that even though I can push 1000+ FPS in GZDoom at my preferred graphical settings, it still looks unacceptably "choppy" (up until a week ago I thought this was due to my old graphics card). I'm of the opinion that simple frame accumulation motion blur would be a godsend for this situation, as there's literally 10x my monitor refresh rate which could be used to temporally smooth the experience instead of going to waste.

This kind of motion blur is the most physically realistic model at these framerates. Very simply, the previous final framebuffer is rendered on top of the current frame at some opacity (the opacity level determines the intensity of the effect). It's a cheap operation and only the previous blended framebuffer is needed.

Here's a few youtube videos showing off the effect injected into Halo and Doom64EX (running at 300-500 fps). Note the spark particles in the second video, and the arachnotron's plasma shots in the third video.
Spoiler:
Of course there's the caveat that this only looks good for high framerates beyond the refresh rate of the monitor, and that's the use case I'd like to be considered for this feature request. For masking of low framerates, something like Pixel Eater's angular motion blur shader would be more appropriate.

8-)

Re: Motion Blur?

by Pixel Eater » Tue Nov 20, 2018 1:08 am

Ooh if you can do that- is it possible to make every other frame dark to actually reduce motion blur as well? I tried that once but the flickering continued outside of GZDoom for a scary period. It's actually what Screem was supposed to be :lol:

Re: Motion Blur?

by Rachael » Tue Nov 20, 2018 12:25 am

As a side project I might try to take a crack at coding this strictly as a "intra-frame blending" project, to allow mixing multiple renders in a single frame to give the illusion of having a higher effective framerate than your monitor supports.

But the success of that project really depends on whether the monitor's refresh state is available to OpenGL or not.

Re: Motion Blur?

by Nash » Mon Nov 19, 2018 11:07 pm

^ I'm with Chris on all points :) I enjoy post processing as a production technique in video games, when they are done right/subtly.

It's the same like, for example, enjoying certain special effects (visual or audio) in movies that make absolutely zero sense in real life. But without those effects, the movie just doesn't have the same impact.

Re: Motion Blur?

by Chris » Mon Nov 19, 2018 9:05 pm

sinaptica wrote:I cannot for the life of me understand the fixation some FPS game developers have to introduce these kind of effects (lens flares, liquids splashing into a transparent planar surface in front of the character, motion blur, etc...) into what's supposed to be the character's viewpoint.
For me, it's because I'm looking at a screen/monitor. Even if I'm totally immersed in the game, my brain is expecting the kinds of effects that are produced by a camera to view on a screen (bloom, lens flares, etc). There's certainly something to say about the effects' quality and subtlety, but if it's completely absent the scene looks flat to me. I'd presume my expectations would be different with a VR headset, where it's not supposed to be like looking at a fixed screen. But with a screen, it just feels more natural to me to see screen-related effects, even if the viewpoint is supposed to be through a character's eyes.

Re: Motion Blur?

by sinaptica » Mon Nov 19, 2018 4:27 pm

dpJudas wrote: Newer and more advanced motion blur algorithms uses both the depth buffer as well as motion vectors for each pixel. In those the stuff further away will blur less and things moving same way as the camera will too.

You are right that true exact motion blur can only be done by rendering lets say 10 frames (the more the better) and average the result.
Thanks for clarifying. Now that you mention it, there's a way to post process renders in blender using that technique.
The results are not nearly as good as rendering several samples per frame, but it's way faster.
dpJudas wrote: Of course I don't doubt that most implementations probably exaggerate the effect to make it more visible. That's where the "artistic" part of it all enters the picture. But originally the point was to make all movement feel more fluent, as if you had a much higher frame rate than you really do.
All I can say then is my visual cortex is in serious disagreement with the artistic vision of the vast majority of developers. :trippy:

Re: Motion Blur?

by dpJudas » Mon Nov 19, 2018 4:08 pm

The oldest and most primitive motion blurs just mixed two frames (current and previous rendered). The higher speed you were moving the more it mixed in the previous frame.

Newer and more advanced motion blur algorithms uses both the depth buffer as well as motion vectors for each pixel. In those the stuff further away will blur less and things moving same way as the camera will too.

You are right that true exact motion blur can only be done by rendering lets say 10 frames (the more the better) and average the result.

Of course I don't doubt that most implementations probably exaggerate the effect to make it more visible. That's where the "artistic" part of it all enters the picture. But originally the point was to make all movement feel more fluent, as if you had a much higher frame rate than you really do.

Re: Motion Blur?

by sinaptica » Mon Nov 19, 2018 3:49 pm

dpJudas wrote:Motion blur is different than those other effects in the sense that it is trying to fix a specific aliasing problem. As Nash already described, it helps a lot at lower frame rates. Even at higher ones it does make the movement feel more smooth, but it comes with the price of a less crisp scene.
Fair enough. Also blur occurs in normal human vision, but it has nothing to do with the fake, extreme, blur generally seen in video games.

What I usually see is image post processing that does not take in account depth or the speed of moving objects (only camera movement).
Things closer to the spectator should blur more than things far from it, be it because you moved your head (this is what today games try to implement) or because the object is moving fast.

I don't have a clue of graphics programming, so please correct me if I'm wrong... But, to my understanding, motion blur of that quality can only be synthesised from a 'source' that has a higher frame rate than the 'output'.

I don't know. I'm not saying it can't be done right, but what I have seen before has given me headaches. :blergh:

Re: Motion Blur?

by Enjay » Mon Nov 19, 2018 3:42 pm

True, I was just making the point (albeit obliquely) that these features (motion blur, screen splashes, flares, etc.) are often touted as "realistic".

Re: Motion Blur?

by dpJudas » Mon Nov 19, 2018 3:25 pm

Note that I said aliasing, not "realism" or "simulating a camera or real eyes". Of course, motion blur can ALSO be used for "artistic" effects of the sort you're describing. :)

Re: Motion Blur?

by Enjay » Mon Nov 19, 2018 3:11 pm

To be fair, to correctly simulate rapid movement of the head, we don't need motion blur. We need GZDoom to somehow alter the player's perception of movement so that they momentarily lose the ability to see and register the game view and then pick up again from the new viewpoint without particularly realising that this trickery had happened. That's what your brain does in real-life so we need this to be "teh realistic".

https://en.wikipedia.org/wiki/Saccadic_masking

:P

Re: Motion Blur?

by Graf Zahl » Mon Nov 19, 2018 3:10 pm

sinaptica wrote:, liquids splashing into a transparent planar surface in front of the character, motion blur, etc...) into what's supposed to be the character's viewpoint.
That one at least makes a little sense in Doom's case, considering Doomguy is wearing a helmet. I still don't care about these effects.

Top