doitsujin / dxvk

Vulkan-based implementation of D3D8, 9, 10 and 11 for Linux / Wine
zlib License
12.73k stars 817 forks source link

Mafia III low fps when I choose "Continue" instead "New Game" after splash screen. #1190

Closed SamStrongg closed 2 years ago

SamStrongg commented 4 years ago

I have low fps when I choose "Continue" instead "New Game" after splash screen. If I choose New Game game runs "ok" on my hardware, even when I press restart mission in menu. I don't notice this issue on WineD3D.

New Game: ss 2019-09-13 19-19-47

Continue: ss 2019-09-13 19-23-32

Software information

Mafia 3, V-sync and fps limit is off in game options. All details are set to minimum. Resolution: 1680x1050 in necessary windowed mode. Game don't want to launch in full screen mode. Sync to VBlank and Allow Flipping is off in Nvidia Settings.

System information

Apitrace file(s)

https://drive.google.com/open?id=1o8PCAUqE0VvCVJPgXlPKDoOerKiZJDbI

Both files are here. The first is "New Game", the second is "Continue". I hope apitrace can help you.

Log files

doitsujin commented 4 years ago

This is almost certainly a case of your GPU not having enough VRAM to run the game, and the game probably recreates all its render targets after loading the level so they end up in sysmem. There's not much I can do here besides spending years to work around the lack of dynamic memory management on Nvidia drivers.

SamStrongg commented 4 years ago

It's a pity. Strange thing is when I play after pressing New Game I can play long with good performance. One way to play with good fps is change permissions to read only on save game files. Then I run New Game, after loading I choose restart mission. This can be helpful but sometimes the game loads player in wrong place and mission dissappears. Maybe someday the problem will be solved. Thanks for the reply and best regards. I have been following the project for a long time and I think you are doing a great job.

ScarecrowDM commented 4 years ago

New Game\Continue doesn't change anything to me, but i can reproduce that low fps with the frame limiter set to anything but unlimited. Maybe the game is enforcing that option somehow in your end?

http://www.framecompare.com/image-compare/screenshotcomparison/J9M11NNU

And yes, the game will hang if you try to launch it on fullscreen mode, but you should be able to change it to fullscreen while in game without problems. Just remember to change it back to windowed before you exit.

SamStrongg commented 4 years ago

As doitsujin says, there is probably a problem with vram, but I found a workaround. I noticed that when I change the resolution of 1680x1050 to 1280x720, the game works just like after pressing New Game, so after thinking about it, I changed the resolution to 4K in videoconfig.cfg, then I changed the resolution in the game to my native one and everything works fine. I did it in Openbox to save Vram. I think the resolution affects vram and this is a fact. The game works for me after choose "Continue" with a small amount of FPS as with the FPS limit enabled. The amount is probably even the same. The FPS limit in this game is not working properly. After setting to 60, it is probably set to around 20. After setting to 30, it is just set to around 10 FPS.You are right that the game works in full screen mode, but unfortunately it breaks down during the movies. Is there any way to solve this problem?

Ahmed-E-86 commented 4 years ago

There is a tool called DxWnd that can force any game to work in boardless window mode, and last time I used it with Wine, it worked fine.

Blisto91 commented 2 years ago

Can verify this issue. (Tested using the free steam demo) Nvidia 960 (2GB vram) 510.60 driver. Latest dxvk (proton bleeding edge)

Continue ![Screenshot_20220402_155045](https://user-images.githubusercontent.com/47954800/161386592-c059b4d3-f007-43a9-a326-0db27a8360ad.png)
New game ![Screenshot_20220402_155803](https://user-images.githubusercontent.com/47954800/161386632-cbdc7d75-ee80-49a1-863a-004b858d30fb.png)

Have not found that any dxvk conf settings affect the problem.

I also have another issue that i can't change the resolution ingame as it then freezes or black screens + freezes. Tho the resolution will have changed when i start it again.

K0bin commented 2 years ago

The original comment still holds true, it's most likely related to a lack of VRAM.

Blisto91 commented 2 years ago

Even if it doesn't fill out? Sorry if that is a stupid question. (Maybe i misunderstand what Vidmen heap 0: shows) I will try on my amd system which have 4GB

K0bin commented 2 years ago

That's just the amount of memory the game uses. Other applications + fragmentation could fill up the rest.

Blisto91 commented 2 years ago

Derp yes of course, makes sense. Looking at nvidia-smi the vram is indeed smack at the top. And on my amd system with 4GB it does not happen. If comparing the memory usage between the two then ideally the game should be allowed AT LEAST 300-400MB more than the nvidia system can deliver (around 1300). Maybe if i wasn't running a DE it could scrape by as plasmashell and kwin_wayland are around 400 combined.

Anyway yes cased closed i guess xD. On to the next issue :)

Edit: The game also doesnt freeze when changing resolution on the amd system. Tho here it crashes if i hover the mouse back and forth over the options when you go into the options menu in the launcher.