doitsujin / dxvk

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

Aion broken text with msaa enabled #3001

Open 234523413432634 opened 1 year ago

234523413432634 commented 1 year ago

Turning on msaa in game options corrupts the text. Happens both on win10 and linux Also msaa setting resets to x0 on every game restart, while with original d3d9 game remembers the last value it was set to.

No msaa: Aion0000 x8 msaa: Aion0001

Software information

Aion 64 bit , directx 9, cry engine i think?

System information

Apitrace file(s)

windows: https://drive.google.com/file/d/1NmuD4opOpMjg0mCS3Fg-otFhNVznH--K/view?usp=sharing

Log files

doitsujin commented 1 year ago

Likely another issue caused by DXVK not supporting single-sampled rasterization to multisampled render targets. We can't really implement this in any resasonable way since the only Vulkan extension that would provide the required functionality does not work with the dynamic rendering functionality that DXVK relies on.

234523413432634 commented 1 year ago

I see. Should i close the issue then?

Blisto91 commented 1 year ago

No it is a legit issue even if there isn't a easy fix. 🙂

pchome commented 1 year ago

Maybe another issue is that "MSAA extensions" (e.g. CSAA/EQAA/etc.) was a thing as part of a drivers. So in some games which didn't mark modes explicitly like "CSAA 4x/EQ4x" an "8x" mode can actually be "4x+4coverage samples". For obvious reasons this may not be available in linux drivers (not sure about amd's EQAA, there is something present in vulkan drivers, maybe works).

Just guessing, but what can happen in the game:

EDIT: actually 8x CSAA can be 4 samples and qualityLevel=8 (9 levels count). Also all above is pure speculation, I know nothing about dx/vk/driver internals, but I believe there is a grain of truth somewhere.

Q: Is it possible for DXVK to use built-in post-processing AA in cases where it can't support MSAA properly? Just to fill the gap and do not live user w/o AA. Yes, it's possible to force some AA via driver settings or external tools, but good to have something OOTB.