libretro / RetroArch

Cross-platform, sophisticated frontend for the libretro API. Licensed GPLv3.
http://www.libretro.com
GNU General Public License v3.0
10.41k stars 1.84k forks source link

XMB waves move too fast on higher refresh rate monitors #8827

Closed iiiGerardoiii closed 5 years ago

iiiGerardoiii commented 5 years ago

Description

It's not that much of a problem, but still wanna point out that the waves on the background of the XMB move quite fast if you run RetroArch on a high refresh rate monitor.

The monitor I'm using runs at 144Hz so I guess the waves move 2.4 times faster.

Version

Environment information

inactive123 commented 5 years ago

This is by design, they run smoother than they would at 60Hz.

I don't see what could be wrong here. You don't want framerate for this menu effect to be capped at 60fps/60Hz at a 144Hz resolution. The menu also moves and operates much smoother at its native framerate.

iiiGerardoiii commented 5 years ago

I know it does look smoother because it's running at 144fps, but I think it's also sped up when it shouldn't.

Going to the extremes to explain better, let's say you have a 100000hz monitor, the waves will be wobbling too fast instead of moving normal but at uncapped 100000fps.

inactive123 commented 5 years ago

If you can make these shaders framerate-independent (and/or if you think that is what the problem is, like I said before I'm not convinced yet), you could try -

Fragment shader of the GLSL version is here -

https://github.com/libretro/RetroArch/blob/master/gfx/drivers/gl_shaders/core_pipeline_xmb_ribbon.glsl.frag.h

and here is the vertex shader -

https://github.com/libretro/RetroArch/blob/master/gfx/drivers/gl_shaders/modern_pipeline_xmb_ribbon.glsl.vert.h

hizzlekizzle commented 5 years ago

I think the easiest/best thing to do would be to modify the 'time' uniform to be multiplied by 60 / framerate. This would preferably be done before it gets to the shader, so it would affect all of the menu shaders.

iiiGerardoiii commented 5 years ago

Not sure what happened but the waves look fancier now, and its speed is ok.

ghost commented 5 years ago

By default the menu (and its shader effects) are already supposed to be capped at 60fps, and there is a setting to disable it. Maybe you turned that off by mistake? It's in Settings -> Frame Throttle -> Throttle Menu Framerate.

orbea commented 5 years ago

Is threaded video enabled? If so try disabling it.