Frame Interpolation shader for Reshade

  • Jesped
  • Topic Author
More
6 years 3 months ago - 6 years 3 months ago #1 by Jesped Frame Interpolation shader for Reshade was created by Jesped
Some people have been using SVP ( www.svp-team.com ) with video streams from capture cards to play "pseudo 60fps" using Frame Interpolation for 30fps locked console games.


Which led me to think that a shader for Reshade could do a much better job, having the depth info and an uncompressed realtime source instead of an external captured video stream.


Is it possible to do this kind of Frame Interpolation shader for Reshade?
Last edit: 6 years 3 months ago by Jesped.

Please Log in or Create an account to join the conversation.

  • crosire
More
6 years 3 months ago #2 by crosire Replied by crosire on topic Frame Interpolation shader for Reshade
You need both the current and the next frame for this to work. But when ReShade runs, the next frame is not even started yet, it runs at the same framerate as the game at the end of each frame. That's why interpolation techniques only work on video streams and not in realtime. You can't inject a new frame using information that doesn't exist yet.

Please Log in or Create an account to join the conversation.

  • Uncle Crassius
More
6 years 3 months ago - 6 years 3 months ago #3 by Uncle Crassius Replied by Uncle Crassius on topic Frame Interpolation shader for Reshade
I remember one guy at Lucas Arts (RIP) toying around with the idea. Sounded promising at that time. Eurogamer wrote about it . They mentioned issues, thoug. Had the problems been solved the technique would've been widely used by now I guess but that doesn't seem to be the case.
Other than that, wouldn't it be theoretically possible to do it with added input lag by not showing the latest frame?
Last edit: 6 years 3 months ago by Uncle Crassius.

Please Log in or Create an account to join the conversation.

  • Jesped
  • Topic Author
More
6 years 3 months ago #4 by Jesped Replied by Jesped on topic Frame Interpolation shader for Reshade

crosire wrote: You need both the current and the next frame for this to work. But when ReShade runs, the next frame is not even started yet, it runs at the same framerate as the game at the end of each frame. That's why interpolation techniques only work on video streams and not in realtime. You can't inject a new frame using information that doesn't exist yet.


Mmmm but you could take the previous frame and have a 1 frame lag, right?

I already tried the SVP method using an Elgato HD Pro hooked up to a PS4. Despite SVP not being designed for this kind of realtime use at all, it works pretty well when you set Processing Threads to 2 and use low impact settings. It just works. Tried Bloodborne, Uncharted 4, Driveclub, Horizon Zero Dawn and despite some frame inconsistencies and artifacts, it looks better with SVP than without it. Clean games with consistent 30fps like Last Guardian on the Pro look almost like real 60fps.

Please Log in or Create an account to join the conversation.

  • crosire
More
6 years 3 months ago #5 by crosire Replied by crosire on topic Frame Interpolation shader for Reshade

Uncle Crassius wrote: Other than that, wouldn't it be theoretically possible to do it with added input lag by not showing the latest frame?

To some degree, depending on how busy the GPU. If the game is already pushing it to its limit, then you'll have a hard time scheduling additional work in the right moment (though it got easier on Windows 10 with GPU preemption). If the GPU is mostly idle, then sure, but in that case, you are better off with the "render # frames ahead" option in your driver control panel, which gives you input lag too, but a full frame and not some attempt at interpolating it.
The following user(s) said Thank You: Uncle Crassius

Please Log in or Create an account to join the conversation.

  • Jesped
  • Topic Author
More
6 years 3 months ago - 6 years 3 months ago #6 by Jesped Replied by Jesped on topic Frame Interpolation shader for Reshade

crosire wrote:

Uncle Crassius wrote: Other than that, wouldn't it be theoretically possible to do it with added input lag by not showing the latest frame?

To some degree, depending on how busy the GPU. If the game is already pushing it to its limit, then you'll have a hard time scheduling additional work in the right moment (though it got easier on Windows 10 with GPU preemption). If the GPU is mostly idle, then sure, but in that case, you are better off with the "render # frames ahead" option in your driver control panel, which gives you input lag too, but a full frame and not some attempt at interpolating it.


The whole point would be having smooth gameplay in 30fps locked games, or unlocked fps games where you want to go for max quality settings and supersampling. Which isn't possible now I think unles you pack a high $ SLI setup.
Last edit: 6 years 3 months ago by Jesped.

Please Log in or Create an account to join the conversation.

  • Jesped
  • Topic Author
More
6 years 3 months ago - 6 years 3 months ago #7 by Jesped Replied by Jesped on topic Frame Interpolation shader for Reshade

Uncle Crassius wrote: I remember one guy at Lucas Arts (RIP) toying around with the idea. Sounded promising at that time. Eurogamer wrote about it . They mentioned issues, thoug. Had the problems been solved the technique would've been widely used by now I guess but that doesn't seem to be the case.
Other than that, wouldn't it be theoretically possible to do it with added input lag by not showing the latest frame?


Really interesting article. I'm not aware that the final published game had this tech, played it on PC years ago.

At first I thought input lag would be prohibitive for realtime gaming, but SVP already works pretty fine. Depending on the game, it adds a bit of lag and a bit of motion artifacts but it's very acceptable.

And SVP is working blindly with a captured video stream, without Depth awareness or anything like that.
Last edit: 6 years 3 months ago by Jesped.

Please Log in or Create an account to join the conversation.

  • Uncle Crassius
More
6 years 3 months ago #8 by Uncle Crassius Replied by Uncle Crassius on topic Frame Interpolation shader for Reshade

Jesped wrote: Really interesting article. I'm not aware that the final published game had this tech, played it on PC years ago.


It think it was only a tech demo and scrapped for the full release.

Please Log in or Create an account to join the conversation.

  • Jesped
  • Topic Author
More
6 years 3 months ago #9 by Jesped Replied by Jesped on topic Frame Interpolation shader for Reshade

Uncle Crassius wrote: It think it was only a tech demo and scrapped for the full release.


There is a Siggraph tech paper detailing the whole process: and.intercon.ru/rtfrucvg_html_slides/

Please Log in or Create an account to join the conversation.

  • Fu-Bama
More
5 years 11 months ago #10 by Fu-Bama Replied by Fu-Bama on topic Frame Interpolation shader for Reshade
This shader captures previous frame to create interlaced effect.
reshade.me/forum/shader-troubleshooting/...et-at-one-pass#26471

Please Log in or Create an account to join the conversation.

  • klotim
More
5 years 11 months ago #11 by klotim Replied by klotim on topic Frame Interpolation shader for Reshade

crosire wrote:

Uncle Crassius wrote: Other than that, wouldn't it be theoretically possible to do it with added input lag by not showing the latest frame?

To some degree, depending on how busy the GPU. If the game is already pushing it to its limit, then you'll have a hard time scheduling additional work in the right moment (though it got easier on Windows 10 with GPU preemption). If the GPU is mostly idle, then sure, but in that case, you are better off with the "render # frames ahead" option in your driver control panel, which gives you input lag too, but a full frame and not some attempt at interpolating it.


Except V-sync, what else could one disable in gpu control panel to have less input lag?

Please Log in or Create an account to join the conversation.

  • klotim
More
5 years 11 months ago #12 by klotim Replied by klotim on topic Frame Interpolation shader for Reshade

crosire wrote:

Uncle Crassius wrote: Other than that, wouldn't it be theoretically possible to do it with added input lag by not showing the latest frame?

To some degree, depending on how busy the GPU. If the game is already pushing it to its limit, then you'll have a hard time scheduling additional work in the right moment (though it got easier on Windows 10 with GPU preemption). If the GPU is mostly idle, then sure, but in that case, you are better off with the "render # frames ahead" option in your driver control panel, which gives you input lag too, but a full frame and not some attempt at interpolating it.


bump

Please Log in or Create an account to join the conversation.

  • VanyaPro
More
2 years 7 months ago #13 by VanyaPro Replied by VanyaPro on topic Frame Interpolation shader for Reshade
I feel excited. If you're give a link in the description, i might be happy. But some of these types of graphics, it wouldn't look that better like, motion blur, nostalgia, monochrome, and else. But i would say, frame interpolation is one of impressive graphics ever. I trying to make this game look more like RTX.

Please Log in or Create an account to join the conversation.

  • VanyaPro
More
2 years 7 months ago #14 by VanyaPro Replied by VanyaPro on topic Frame Interpolation shader for Reshade
The one game, what i have, "SonicAdventureDX".

Please Log in or Create an account to join the conversation.

We use cookies
We use cookies on our website. Some of them are essential for the operation of the forum. You can decide for yourself whether you want to allow cookies or not. Please note that if you reject them, you may not be able to use all the functionalities of the site.