PabloMK7 / citra

A Nintendo 3DS Emulator
GNU General Public License v2.0
3.74k stars 636 forks source link

MHXX stutters every so often #251

Open Maesejesus opened 2 months ago

Maesejesus commented 2 months ago

Is there an existing issue for this?

Affected Build(s)

5115f64

Description of Issue

No matter how many settings I tweak, what resolution I use, or if I use OpenGL or Vulkan, whenever I load a save file on Monster Hunter XX (Double Cross), I can observe a small, intermitent stutter happening constantly. It seemingly happens every few seconds, but I cannot affirm it has something to do with data loading or not, because they still happen even staying still in one place, although they're more apparent when moving.

I have looked around, and I have found other people mentioning this issue, but no fixes anywhere, I tried several supposed codes to improve, but did nothing. The emulation speed is 100% even when these stutters happen.

Mind you, this is not shader cache related, this happens on areas of the game already explored, and supposedly, already "cached". Other games I have tried, such as Pilotwings Resort, Alliance Alive, Pullblox and Monster Hunter 3 Ultimate do not suffer from this.

All of the games mentioned have been obtained by dumping my own games, and are supposed to be properly dumped. This issue also happens on other forks, like older Citras and Lime3DS. Looking around I found mentiones of a "Valentin" fork that supposedly fixed those stutters, but it seems it no longer exists, and it was for Android, although they may be refering to a completely different thing.

Expected Behavior

The game should not have said stutters.

Reproduction Steps

Start the game, it's apparent once a file is loaded and you are taken to a town, or go to a field andwalk around, making the stutters easier to see when they happen.

Log File

citra_log.txt

System Configuration

CPU: AMD Ryzen 5 5560U GPU/Driver: AMD Radeon Graphics RAM: 16 GB OS: Windows 10 64 Bit

The computer is a Beelink MiniPC SER5.

Edit: After several attempts to mess around with the game, I have found out that if you use cheat codes to lower the frame rate to 55 or lower, this stutter seemingly disappears. Anything above 55 (like, I tried with 57) brings it back.

Now, just to clarify, there is some stuttering on original hardware on towns when you move around, as it loads the NPCS, and some places have a lot more than others, and it's noticeable. The stutter I mention here happens everywhere, also on the fields, and I don't see it on real console, I've walked around the same areas on both emulator and my N2DSXL comparing. For now using the code to play at 55 FPS is a good enough compromise, there's not much difference between 55 and 60 feeling-wise, as MH is not a super fast-paced game.