protonscr

Elder Scrolls Online: invisible models (AMDVLK and Windows) [Vega 56]

dxvkclosed bug
doitsujin/dxvk#68 · opened 2018-02-10 by ssorgatem · updated 2018-02-27 · 13 comments · github
Sssorgatem 2018-02-10 github

Trying out the latest build with ESO, now character models are invisible (it was all correctly rendered last week).

On the plus side, at least it doesn't hang the GPU forcing a reboot, as it used to do.

Software information

Elder Scrolls Online, 64 bit Morrowind client, on a clean WINEPREFIX

System information

  • GPU: Vega 56
  • Driver: mesa-git
  • Wine version: lastest staging with some extra patches (AUR "wine-gaming-nine")
  • DXVK version: latest git version as of this writing

Apitrace file(s)

  • Put a link here

Log files

Can be found here:
https://actinia.ddns.net/index.php/s/wm3JpqQ8A7xpQPG

(eso64_dxgi.log, eso64_d3d11.log and eso64.trace; I hope to have generated them properly)

Sssorgatem 2018-02-10 github

I also tried with latest amdvlk, witht he exact same results.
It's an improvement there, since last week I couldn't get past character selection on amdvlk; although characters did render properly.

Eexolyte 2018-02-10 github

Still works fine here.
DXVK commit: 8f134ba (latest)
GPU: RX 570
Driver: mesa 17.3.3
Wine version: wine-staging-nine from the community repos

Sssorgatem 2018-02-10 github

I tried with mesa 17.3.3.

Result: the GPU freezes at the login screen, forcing a reboot.

I've attached the .log files to the same shared folder (prefixed with "mesa_stable")

Sssorgatem 2018-02-10 github

@exolyte what kernel are you running?

I'm running the latest mainline git. AMDGPU differences might be involved...

Eexolyte 2018-02-10 github

I'm using the latest kernel in the arch repos: linux 4.15.2-2.

Ffagoatse 2018-02-10 github

Vega based GPUs are still broken it seems.

Ddoitsujin maintainer 2018-02-11 github

Your trace file is broken.

Vega alone shouldn't be the reason why some of the pipelines don't compile, which is probably the reason why the models don't render. Can you bisect this? "Last week" is a bit vague and I can't reproduce this with the trace I have.

Sssorgatem 2018-02-11 github

I ran git bisect, on amdvlk.
This commit makes amdvlk able to get to character selection screen... but also it doesn't show the character model.

Not sure if this is the culprit of the character models not showing, though; I hoped to find a "good" commit with both amdvlk working and the character mdoels showing...

I'll bisect now on RADV, but it may take longer, since freezes force me to reboot...

Here's the commit:

e47c244ac38f93583370f6146c608524c891751f is the first bad commit
commit e47c244ac38f93583370f6146c608524c891751f
Author: Philip Rebohle [email protected]
Date: Wed Jan 31 00:48:39 2018 +0100

[dxvk] Use logger instead of exception when compiling pipelines

The exception is never caught because it is called from DXVK code,
not D3D code.
Sssorgatem 2018-02-11 github

OK, this is weird, I can't replicate it now on RADV.
It was probably a mesa issue... (I update mesa-git daily...)

However, it kinda shows that the freezing of the GPU is related to therendering of the character models: no characters, no freezing.

Now it renders properly.... but it freezes the GPU after some time (less than a minute).

The issue of the missing models still exists for AMDVLK, though.
So this issue can be marked AMDVLK-specific, I guess.

Sssorgatem 2018-02-11 github

For what it's worth, I've added log files for the freeze with latest dxvk and RADV to the shared folder.

I also added a new trace file... if it's broken too I don't know what I am doing wrong :/

Sssorgatem 2018-02-12 github

In AMDVLK's case, it may be a driver issue and unrelated to dxvk. From their release notes:

"
Note: Pipeline compiler support for geometry and tessellation shaders is not fully implemented for the Radeon™ RX Vega Series. APU support is limited. These issues will be addressed in upcoming releases
"

Sssorgatem 2018-02-16 github

Just an update.

I tested it with DXVK on Windows 10 with the latest AMD driver.

Exact same behaviour as with AMDVLK on Linux. Which is not that surprising, since AMDVLK theoretically shares the code with the Windows Vulkan driver. But it's good to confirm it's not Linux-specific.

So it's either an issue within the AMD stack or in DXVK. I'd lean to the former, given they admit they don't fully support Vega yet.

I've also updated the title of the issue.

I'll make sure to update whenever there's a new AMDVLK code drop.

Sssorgatem 2018-02-27 github

As of https://github.com/GPUOpen-Drivers/AMDVLK/commit/35bf91d01a5d4a78b9900b432712fc8c344350e6 it now works properly.

ESO on AMDVLK can be added to the wiki of working games.

Launch options