doitsujin / atelier-sync-fix

Workaround for low GPU utilization in recent Atelier games
zlib License
184 stars 15 forks source link

Windows support #6

Open TellowKrinkle opened 1 year ago

TellowKrinkle commented 1 year ago

Note: Current main just failed to change anything (rather than crashing) when built with VS, so you might want to verify that the mingw builds work on Windows

TellowKrinkle commented 1 year ago

Looks like the original fix broke dxvk (and therefore proton) support, I switched the hook method of ID3D11Device over as well and that seems to have fixed that, it now runs on steam deck as well as windows.

doitsujin commented 1 year ago

I've considered doing this before, but the problem is that wrapping the device will break ID3D11DeviceChild::GetDevice calls from all objects created from the device, so we'd either need to make double-sure that none of the games call this, or wrap all D3D11 objects.

Might be more useful to fix DXVK to not call any (potentially hooked) GetImmediateContext method internally.

TellowKrinkle commented 1 year ago

Ahh yeah, I missed that one

I've removed that commit for now

ffrasisti commented 1 year ago

Hi, @TellowKrinkle Sorry to post here. But Atelier games after Ryza 2 have a tendency to freeze during loading transitions on some machines, especially on linux through proton. Is there any solution to this that you can find? Thanks! The performance improvement is great but the freezes are really dampening the games

TellowKrinkle commented 1 year ago

Does "after Ryza 2" include Ryza 2? If so, I've played Ryza 2 (with sync fix) a decent amount from a steam deck and had no freezes, so I'm not sure how much I can help. Otherwise, I have yet to play a post-Ryza 2 game, but when I do eventually play one I'll make sure to include some steam deck time to see if I hit anything.

ffrasisti commented 1 year ago

Hi. Ryza 2 has freezes but they are exceedingly unsual. They are unfortunately fairly common in Sophie 2 and Ryza 3El 27 ago. 2023 23:02, TellowKrinkle @.***> escribió: Does "after Ryza 2" include Ryza 2? If so, I've played Ryza 2 (with sync fix) a decent amount from a steam deck and had no freezes, so I'm not sure how much I can help. Otherwise, I have yet to play a post-Ryza 2 game, but when I do eventually play one I'll make sure to include some steam deck time to see if I hit anything.

—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you commented.Message ID: @.***>

ffrasisti commented 1 year ago

You can see it in the proton github threads for ryza 3 and sophie 2. Basically area transitions may just hang forcing a gamequitEl 27 ago. 2023 23:15, Federico Frasisti @.> escribió:Hi. Ryza 2 has freezes but they are exceedingly unsual. They are unfortunately fairly common in Sophie 2 and Ryza 3El 27 ago. 2023 23:02, TellowKrinkle @.> escribió: Does "after Ryza 2" include Ryza 2? If so, I've played Ryza 2 (with sync fix) a decent amount from a steam deck and had no freezes, so I'm not sure how much I can help. Otherwise, I have yet to play a post-Ryza 2 game, but when I do eventually play one I'll make sure to include some steam deck time to see if I hit anything.

—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you commented.Message ID: @.***>

ffrasisti commented 1 year ago

You can see people discuss the freezing here for instance https://github.com/ValveSoftware/Proton/issues/5841

ffrasisti commented 1 year ago

https://github.com/ValveSoftware/Proton/issues/4569#issuecomment-1490756110 here is a ryza 2 issue and log

TellowKrinkle commented 1 year ago

If you have any more things to add, please mention me on the relevant issues instead of posting more here