Mupen64 - CRT Royale more lag for higher upscale

Hi, I noticed some (in my opinion) weird behavior. I started using mupen64plus next with the paraLLEl RDP and crt royale shader on x1 internal resolution. On most games everything is fine but in some cases the audio just drops randomly (like lagging) though the video does not. When I disable the crt royale shader the audio lag is gone.

This effect is amplified the higher I set the upscale option. At x4 upscale the audio is completely gone and the fps drops too. Weird is, when I run mupen64 with x4 upscale and no shader active, everything runs just fine. So my problem is that the shader keeps adding lag as I upscale the game, which doesn’t make sense too me, since my pc and retroarch output resolution in all cases is 4k.

Ain’t the shaders supposed to be post processing to the overall output image? If so the shaders shouldn’t add lag for higher internal resolutions?

My system specs:

  • Ryzen 5 4650g
  • 16gb RAM
  • Mupen64Plus Next with ParaLLEl RDP
  • CRT Royale shader

Does anybody know why the shaders keep adding lag the higher mupen64 upscale is though my overall output resolution is 4k? The lag is gone completely when I disable the shader, even at high upscale settings.

Shaders are programs that run on every pixel, so if you give it more pixels (in the form of increased resolution), it has to run more times (4x more for 2x, 16x for 4x). ParaLLEl-RDP also taxes the GPU quite a bit at higher scales, leaving fewer resources for the shader to utilize

But I thought the shaders would be applied to the final output image, in my case 4k resolution and not the internal emulator resolution. Therefor the performance cost should depend on my 4k resolution and not on the emulator upscale?

Or do the shaders apply right before the output resolution is applied?

Depends on the shader. If it uses “viewport” for the scaling mode, it gets applied to the window size, if it’s “source”, it gets applied at the res of the input framebuffer. Viewport is usually much more demanding than source, and many of the effects expect source scaling. Scanline effects, for example, usually look weird at viewport scaling.

1 Like

Thank you for the clarification. I didn’t know there is an option to which image the shader should be applied. That explains the behavior I experienced.

I guess I then have to fiddle around with the shader settings or just disable them completely for more demanding systems.