https://bugs.winehq.org/show_bug.cgi?id=46072
Bug ID: 46072 Summary: Freelancer: Stutter when new NPC ships spawn Product: Wine Version: 3.19 Hardware: x86 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: -unknown Assignee: wine-bugs@winehq.org Reporter: tom@r.je Distribution: ---
I've been trying to debug this for some time, however in the game Freelancer, when new NPC ships spawn, the game stutters. This has happened every time I've tried playing the game (First attempt last September, same issue with whatever the latest wine version was then)
Video:
https://www.youtube.com/watch?v=fLnkWDsgcpc&feature=youtu.be
It's most pronounced at 00:57 but is often worse than that and happens each time new NPCs spawn. In that video each time an NPC spawns ahead or behind the player a stutter occurs. It seems to vary from 0.1 seconds to up to about a second.
It is *always* when an NPC spawns so it seems like it's an I/O issue either loading the 3d model or the related audio.
Nothing appears in the console using the default WINEDEBUG.
These lines get repeated:
0009:fixme:d3d:debug_d3dformat Unrecognized 0x38414144 (as fourcc: DAA8) WINED3DFORMAT! 0009:fixme:d3d:wined3d_get_format Can't find format unrecognized (0x38414144) in the format lookup table.
But they do not coincide with the stutter. Running WINEDEBUG=all makes it impossible to see when the issue occurs because the game runs as a slideshow.
I have tried the following:
1) Native Microsoft Windows on the same system works fine, no stutter
2) Using lower settings. It does not appear to be GPU related.
3) Using a d3d8 -> dx11 windows wrapper and DXVK. It works as intended, forcing the d3d8 game to render using DXVK. The game still runs at 60fps except when new ships load and the stutter occurs (showing < 20fps briefly though really it's 0fps for a small amount of time)
4) Running from an SSD and NVME, no difference
5) Using the esync patches to reduce CPU/IO overhead, no difference
6) Using taskset to force the game to only use cores 1-4, no difference.
7) Disabling audio in WINE. Perhaps it's when the new NPC's engine sounds are loaded? It doesn't help but this may be because the audio is still loaded, it's just never played. It could still be an audio issue.
8) Using ALSA instead of pulse in winecfg.
9) wine-staging, no effect
System specifications:
AMD Threadripper 1950x 32gb DDR ram nvidia 980ti.
It's a shame because the game runs beautifully except for the annoying stutter every 20-30 or so seconds when new NPC ships spawn.
I can't see how it's a hardware issue as the game is from 2003 and even with the overhead of WINE should run flawlessly on a modern PC.