summaryrefslogtreecommitdiff
path: root/mm/src/code
diff options
context:
space:
mode:
authorArchez <Archez@users.noreply.github.com>2024-05-18 13:51:33 -0400
committerGarrett Cox <garrettjcox@gmail.com>2024-05-22 09:05:05 -0500
commitacad9da04fd6cc97fdaf53103bf8839dd28d4087 (patch)
tree2ed11e1d1e129e2855b496cda0a137568e80760e /mm/src/code
parentfc5efd4283a855ee30632e33ab2b96f23d42e825 (diff)
Add option to interpolate motion blur (#405)
* add option to interpolate motion blur * Update mm/2s2h/Enhancements/Graphics/MotionBlur.cpp Co-authored-by: Garrett Cox <garrettjcox@gmail.com> --------- Co-authored-by: Garrett Cox <garrettjcox@gmail.com>
Diffstat (limited to 'mm/src/code')
-rw-r--r--mm/src/code/z_play.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/mm/src/code/z_play.c b/mm/src/code/z_play.c
index 218531ebd..faf0e4279 100644
--- a/mm/src/code/z_play.c
+++ b/mm/src/code/z_play.c
@@ -117,9 +117,10 @@ void Play_DrawMotionBlur(PlayState* this) {
}
hasCopiedForFrame = false;
+ u8 interpolate = CVarGetInteger("gEnhancements.Graphics.MotionBlur.Interpolate", 0);
- // 2S2H [Port] Copy framebuffer only once per game frame to exclude motion blur from interpolation
- FB_CopyToFramebuffer(&gfx, 0, gBlurFrameBuffer, true, &hasCopiedForFrame);
+ // 2S2H [Port] Copy framebuffer, either once per game frame or all frames depending on interpolation setting
+ FB_CopyToFramebuffer(&gfx, 0, gBlurFrameBuffer, !interpolate, &hasCopiedForFrame);
gSPEndDisplayList(gfx++);