Welcome, Guest.
Username: Password: Remember me

TOPIC: Who said ReShade can't do quality motion blur?

Who said ReShade can't do quality motion blur? 2 years 11 months ago #1

This is a test frame blending shader I'm working on, maybe it's better than the Framework's maybe it's not, the idea is that it collects past frames and blends them.
Really alpha stage but I wanted some feedback.
The main technical issue, which can only be *so much* solved is that low framerates will yield a ghosting effect, but if you can get more than 60 (specially around the 100's) it looks fantastic.

Here's a test version you can get for 3.0: my.mixtape.moe/kacblt.fx
I'd recommend an intensity setting of 0.8.

On the technical part, it's just collecting the framebuffer 4 times on 4 techniques and then blending them in a 5th technique with the framebuffer.
I'm being careful not to introduce input lag as well.
Obviously this isn't exactly the prettiest implementation, but the quality seems to be a bit better than just lerping through the last frames like
lerp(lastFrame, currentFrame, shutterSpeed)

I'm considering implementing some sort of "framerate threshold", similar to what I did on another temporal motion blur shader I have here.
The great thing about this implementation is that it gives you high quality full scene motion blur, as long as you have enough FPS for it.

Here's a gif [HD]:
Likes to reinvent the wheel.

My shaders repository: www.github.com/luluco250/FXShaders
The administrator has disabled public write access.
The following user(s) said Thank You: crosire, andrew, Genrix, Aksine12, PureEvilWindom

Who said ReShade can't do quality motion blur? 2 years 11 months ago #2

Good work ! I was waiting for months, looking for a good motion blur in reshade.
I tested the shader, but did'nt understand, how it works, the image was frozen (ghosting), a bit dark. I have tested on reshade 3.0.7b.
The administrator has disabled public write access.

Who said ReShade can't do quality motion blur? 2 years 11 months ago #3

andrew wrote:
Good work ! I was waiting for months, looking for a good motion blur in reshade.
I tested the shader, but did'nt understand, how it works, the image was frozen (ghosting), a bit dark. I have tested on reshade 3.0.7b.

There are 5 techniques to be enabled, you'll get artifacts otherwise.
The actual blending occurs in FrameBlender_Blend, the others are just saving the image at different times.
Likes to reinvent the wheel.

My shaders repository: www.github.com/luluco250/FXShaders
The administrator has disabled public write access.

Who said ReShade can't do quality motion blur? 2 years 11 months ago #4

Doesn't seem to work for some reason ,i enabled all five techniques
The administrator has disabled public write access.

Who said ReShade can't do quality motion blur? 2 years 10 months ago #5

Hey did you update this shader ?
The administrator has disabled public write access.

Who said ReShade can't do quality motion blur? 10 months 6 days ago #6

release this shader please...
The administrator has disabled public write access.

Who said ReShade can't do quality motion blur? 10 months 6 days ago #7

i've got a feeling the best method for motion blur may be in some form of depth-based masking. you can blur the surfaces in motion then, without introducing ghosting on the edges.

not sure if burnout paradise didn't use something like that, to a degree at least. its motion blur implementation was pretty nice.
The administrator has disabled public write access.
The following user(s) said Thank You: jas01

Who said ReShade can't do quality motion blur? 10 months 5 days ago #8

unic0rn wrote:
i've got a feeling the best method for motion blur may be in some form of depth-based masking. you can blur the surfaces in motion then, without introducing ghosting on the edges.

not sure if burnout paradise didn't use something like that, to a degree at least. its motion blur implementation was pretty nice.
Looking at the gif in the startpost I get the feeling this is just a ghosting result which looks a bit like motion blur. Full screen 'everything moves at the same pace' motion blur is abit like ghosting using a temporal additive blend, which is easy to do (3 lines of code) but real motion blur is different: objects move at different speeds and therefore you need a different approach, one where you need velocities of the various areas that move. This paper is a great start: www.iryoku.com/next-generation-post-proc...uty-advanced-warfare by Jimenez, which builds on the work of McGuire e.a. (casual-effects.com/research/McGuire2012Blur/McGuire12Blur.pdf )

Having the screen blur a bit when the camera moves is IMHO just ghosting and doable with a temporal blend (as a key ingredient is missing: there's no velocity buffer/data, there's just a frame and a depth buffer, 2 of the 3 components)
Last Edit: 10 months 5 days ago by OtisInf.
The administrator has disabled public write access.

Who said ReShade can't do quality motion blur? 10 months 5 days ago #9

Where is the shader?) The link is 404
The administrator has disabled public write access.

Who said ReShade can't do quality motion blur? 10 months 3 days ago #10

I have been working on motion detection for other reasons. But, you think this motion blur paired up this Motion Detection shader would help?



Still WIP
My GitHub page where you can get the Latest release of SuperDepth3D github.com/BlueSkyDefender/Depth3D

My PayPal Me Link If you like to donate paypal.me/BlueSkyDefender

Also my steam page steamcommunity.com/id/BlueSkyDefender

Discord Server discord.gg/W2f7YhX
Last Edit: 10 months 3 days ago by BlueSkyKnight. Reason: Fixed video
The administrator has disabled public write access.
The following user(s) said Thank You: canceralp

Who said ReShade can't do quality motion blur? 10 months 3 days ago #11

I could not find your code for motion blur so I ended up using my old trails code that I used for light painting. I combined my motion detection code with trails and it seemed to be close to the same effect in your video.

I guess it can be done kind of...... If you people like it. I can fix it up a bit and submit it to the main repository.

press 0 and look at the leaf. It not very many samples. But, it looks almost like Per-object motion blur.


It's kind of hard when working with one past frame like this.

Here is the shader to test.
github.com/BlueSkyDefender/Depth3D/blob/...perimental/Trails.fx
My GitHub page where you can get the Latest release of SuperDepth3D github.com/BlueSkyDefender/Depth3D

My PayPal Me Link If you like to donate paypal.me/BlueSkyDefender

Also my steam page steamcommunity.com/id/BlueSkyDefender

Discord Server discord.gg/W2f7YhX
Last Edit: 10 months 3 days ago by BlueSkyKnight.
The administrator has disabled public write access.
The following user(s) said Thank You: jas01, Apocalypso, luluco250

Who said ReShade can't do quality motion blur? 10 months 2 days ago #12

Hey.
I'm interested in this shader for sure. I think you did a very good work here. I think that with your motion detection algorithm done we could finally get a decent motion blur for ReShade.
The administrator has disabled public write access.

Who said ReShade can't do quality motion blur? 9 months 3 weeks ago #13

BlueSkyKnight wrote:
I have been working on motion detection for other reasons. But, you think this motion blur paired up this Motion Detection shader would help?



Still WIP
This can even be a used as a base for temporal anti aliasing applications.
Compare current and previous frames and blend accordingly.
The administrator has disabled public write access.

Who said ReShade can't do quality motion blur? 8 months 1 week ago #14

I'm interested as well. I'm having to run Assassins Creed Origins limited to 30 FPS (MSI Afterburner) and have been setting it up to basically run as it does on the consoles. Motion Blur and AA. Fake Motion Blur helps but it would be something better would be good. Motion Blur is essential at 30 FPS ... "Even 25 or 30FPS can be totally sufficient in slow or medium-paced games - particularly if the game has motion blur, softer edges, and does not display significant variability or stuttering" - www.tweakguides.com/Graphics_5.html
The administrator has disabled public write access.

Who said ReShade can't do quality motion blur? 8 months 1 week ago #15

MichaelZFreeman wrote:
I'm interested as well. I'm having to run Assassins Creed Origins limited to 30 FPS (MSI Afterburner) and have been setting it up to basically run as it does on the consoles. Motion Blur and AA. Fake Motion Blur helps but it would be something better would be good. Motion Blur is essential at 30 FPS ... "Even 25 or 30FPS can be totally sufficient in slow or medium-paced games - particularly if the game has motion blur, softer edges, and does not display significant variability or stuttering" - www.tweakguides.com/Graphics_5.html

To me it's quite the opposite, I find motion blur obnoxious at lower framerates. It's supposed to simulate movement too fast for your eyes to catch, but instead it just looks like a sluggish blurry mess. It also pains me that developers still don't do clamping correctly and we get "squared" motion blur like in Stalker SoC and Deus Ex MD, fixing that with something like Unity's ClampMagnitude() was fun and worked really well.
Likes to reinvent the wheel.

My shaders repository: www.github.com/luluco250/FXShaders
The administrator has disabled public write access.

Who said ReShade can't do quality motion blur? 8 months 1 week ago #16

unic0rn wrote:
i've got a feeling the best method for motion blur may be in some form of depth-based masking. you can blur the surfaces in motion then, without introducing ghosting on the edges.

not sure if burnout paradise didn't use something like that, to a degree at least. its motion blur implementation was pretty nice.

Reshade's "AdvanceMotionBlur" which is now removed had depth based motion blur. It also didn't blur the whole screen like fake motion blur does.
The administrator has disabled public write access.

Who said ReShade can't do quality motion blur? 8 months 1 week ago #17

luluco250 wrote:
MichaelZFreeman wrote:
I'm interested as well. I'm having to run Assassins Creed Origins limited to 30 FPS (MSI Afterburner) and have been setting it up to basically run as it does on the consoles. Motion Blur and AA. Fake Motion Blur helps but it would be something better would be good. Motion Blur is essential at 30 FPS ... "Even 25 or 30FPS can be totally sufficient in slow or medium-paced games - particularly if the game has motion blur, softer edges, and does not display significant variability or stuttering" - www.tweakguides.com/Graphics_5.html

To me it's quite the opposite, I find motion blur obnoxious at lower framerates. It's supposed to simulate movement too fast for your eyes to catch, but instead it just looks like a sluggish blurry mess. It also pains me that developers still don't do clamping correctly and we get "squared" motion blur like in Stalker SoC and Deus Ex MD, fixing that with something like Unity's ClampMagnitude() was fun and worked really well.

It's all psychology dependent and based on personal taste. But that article allowed me to grasp the importance of MB for me as I'm not used to 30 FPS (the only reason I use it here is to stabilise AC:O) because I had failed to appreciate why it's use in films and TV makes that media's comparable FPS seem smooth. I think I thought MB was a video game "gimmick" meant to make objects seems to move fast when in fact it has an entire history that goes back to more traditional media like film and TV.
Sami 1999 wrote:
unic0rn wrote:
i've got a feeling the best method for motion blur may be in some form of depth-based masking. you can blur the surfaces in motion then, without introducing ghosting on the edges.

not sure if burnout paradise didn't use something like that, to a degree at least. its motion blur implementation was pretty nice.

Reshade's "AdvanceMotionBlur" which is now removed had depth based motion blur. It also didn't blur the whole screen like fake motion blur does.

Why was this version of MB removed ? Is there somewhere I can still get this ?
The administrator has disabled public write access.

Who said ReShade can't do quality motion blur? 8 months 1 week ago #18

MichaelZFreeman wrote:
luluco250 wrote:
Why was this version of MB removed ? Is there somewhere I can still get this ?

The owner never ported it for latest versions I guess. But one user did made it working on latest version of reshade.

Here's the post where you will find the link: reshade.me/forum/shader-suggestions/4302...-for-reshade-3#28022

I think it should be included on Reshade by default.
The administrator has disabled public write access.
The following user(s) said Thank You: MichaelZFreeman

Who said ReShade can't do quality motion blur? 8 months 1 week ago #19

Thanks. I tried that but could not see it working. Although I wonder if it's subtler than I think. I was just playing Far Cry 3 and got a brief frame freeze while turning around fast, and there it was. MB. I never even knew FC3 had (it's native) MB as it's not explicitly listed in the settings (it's probably grouped with "shaders" or something). So I should probably examine more closely the shader you link.

EDIT: OK, I got it working. For some reason the default settings are turned right down or the effect is so subtle at default setting that a screen shot does not capture it when turning around very fast. Turned things up a bit and now its visible but way too strong. Still tuning.

Actually I got thinking about the title of this thread. The issue of MB with ReShade seems to suggest that MB in games is doing some mysterious thing that ReShade cannot duplicate. As far as I can tell MB is just a shader like any other shader that slightly blurs everything in the entire frame when there is a very fast movement. The effect seems especially accurate, compared to cinematic MB, in FC3 (at least to my eye's).

Has anyone looked at the background of what MB actually *is* ?

"So, essentially, you could make the argument that this is the entire reason why motion blur exists. We’re used to seeing motion blur on moving pictures and images. It gives everything a more natural look because we’ve become accustomed to seeing motion this way as a result of the various shutter speeds of film and video". - www.rocketstock.com/blog/when-to-use-motion-blur/

Of course in a game the "shutter speed" is the time each frame is on the screen so a "quality" ReShade motion blur should probably take account of FPS and frame time and alter the MB accordingly. There's even research such as this ... research.bournemouth.ac.uk/impact/improv...and-special-effects/ - www.tandfonline.com/doi/abs/10.1080/2151237X.2007.10129235

So I don't know why the depth buffer even has to be involved. Just as in traditional photography and film the blur is created by the shutter time, in this case the time a single frame stays on the screen such as 33.3 ms. With emulsion film and photography the entire scene is blurred equally ? So I suppose the effect depends on the "shutter speed" (frame time) as well as how quickly the in game "camera" is moving and/or objects relative to it. This seems closer to what MB actually is although I'm still thinking about this.
Last Edit: 8 months 1 week ago by MichaelZFreeman. Reason: Got shader working plus more about MB.
The administrator has disabled public write access.

Who said ReShade can't do quality motion blur? 5 months 3 weeks ago #20

So Velocity Buffer is necessary to have any kind of hope for decent Motion blur. Even if you make a pseudo motion buffer in reshade it will still break down when High-speed elements are introduced to the scene. Also Panning your Cam can cause this pseudo motion buffer to break down. You can estimate the speed and maybe work around this issue. But, I doubt it worth the effort.

With that out of the way. I still made the shader even with this fault for testing.

So let's talk about the Mask. Used in this image.

The Image above highlights what gets blurred and what not getting blurred. I took it when Swinging my weapon in Game. This is particularly hard to capture because it had to be in motion. It's Kind of fast. Reaching the limits of what the mask can well mask properly. But in this case, it gives a good result. Even the Drone in the background is getting the blur applied. Also the tree with the moving leaves.

Anyways keep expectations low and try this out. Keep in mind Depth Buffer access is necessary.

github.com/BlueSkyDefender/Depth3D/commi...8a4fd8e6841698534408

Pseudo Velocity Buffer was a side effect when working on a TAA shader.
My GitHub page where you can get the Latest release of SuperDepth3D github.com/BlueSkyDefender/Depth3D

My PayPal Me Link If you like to donate paypal.me/BlueSkyDefender

Also my steam page steamcommunity.com/id/BlueSkyDefender

Discord Server discord.gg/W2f7YhX
Last Edit: 5 months 3 weeks ago by BlueSkyKnight.
The administrator has disabled public write access.
The following user(s) said Thank You: Scorpio82CO
  • Page:
  • 1
  • 2