protonscr

Skyrim: Special Edition Updated [21/1/2018]

dxvkclosed feature setd3d11
doitsujin/dxvk#7 · opened 2018-01-13 by ghost · updated 2019-04-28 · 12 comments · github
?ghost 2018-01-13 github

Software information

Skyrim: Special Edition using the lowest graphics settings with no aa or msaa the game starts perfectly but when you try to continue or create a new game you get a black screen

System information

Distro: Antergos
GPU: R9 390
Driver: Mesa git
Wine version: wine-staging-2.21

Apitrace file(s)

From @skry https://mega.nz/#!lUdRGYZL!M9S5PdqZXGYaxuKaBlrwDZDsu26VrG4l1H92pgQ1N90

Log files
d3d11.log
dxgi.log

XXenonPK 2018-01-15 github

Similar results with Witcher 3 & Saints Row IV

Jjonlap 2018-01-21 github

Without dxvk overrides Skyrim SE does not launch at all. With dxvk overrides, Skyrim SE main menu loads and loading a save works. Graphics in main menu and loading screen are OK. When loaded game should start I get black screen with environmental audio looping in background. Game does not seem to accept input or otherwise work. Same happens when trying to start a new game. Wine staging 2.21, Mesa 17.3.2 and RX480.

dxgi.log
d3d11.log

Ddoitsujin maintainer 2018-01-21 github

Can you create a D3D11 apitrace so that I can test locally? The logs indicate that the game requires queries which aren't implemented yet, but most applications complaining about queries at least manage to render something.

Jjonlap 2018-01-21 github

@doitsujin Unfortunately game stops (displays loading screen for few seconds before crashing) while loading when using apitrace:

warn:debugstr:OutputDebugStringA "apitrace: tracing to Z:\mnt\userhdd\WinePrefixes\skyrim\drive_c\Program Files\Steam\steamapps\common\Skyrim Special Edition\SkyrimSE.2.trace\n"
apitrace: tracing to Z:\mnt\userhdd\WinePrefixes\skyrim\drive_c\Program Files\Steam\steamapps\common\Skyrim Special Edition\SkyrimSE.2.trace
warn:debugstr:OutputDebugStringA "error: unavailable function CreateDXGIFactory\n"
error: unavailable function CreateDXGIFactory

I launched it like this: wine apitrace-msvc/x64/bin/apitrace.exe trace --api dxgi -v ./SkyrimSE.exe
Trace file it creates is useless. Do I need some extra dll overrides with apitrace? Just let me know if I can do something differently or something else that would help.

Ddoitsujin maintainer 2018-01-22 github

@skry Some people reported that they had more success getting apitrace to work on Wine 3.0 rather than 2.21-staging. In any case, make sure not to use DXVK when recording it.

Nnairaner 2018-01-22 github

@skry DXGIFactory was commited to wine master after 3.0 release, so you can either compile master to see how it works or wait for wine 3.1

Jjonlap 2018-01-22 github

@nairaner Thanks! I compiled master and it works now.

@doitsujin It seems wine-staging has its own implementation of at least vulkan-1.dll, and with that and DXVK I got menus working yesterday. I compiled wine from current master and it does not have such dll. I Installed Vulkan SDK and now it finds vulkan-1.dll but I cannot get game to run at all with DXVK. Without DXVK game now runs, but is very slow. I managed to get ~1GB trace of the run without DXVK. You can get it here.

Ddoitsujin maintainer 2018-01-22 github

Thanks, the trace gives me something to work with.

Ddoitsujin maintainer 2018-01-25 github

To give you an update, the apitrace actually renders correctly for me, although the performance is absolutely abysmal for some reason. I've identified a potential issue with how the game uses depth buffers though.

If you are using mesa-git, please check the driver support page on the Wiki. Also, be aware that the shader compiler in mesa-git is insanely slow at the moment. I'm having similar issues with Homefront and Tomb Raider where compiling a single Vulkan pipeline can take up to eight seconds and loading into the game takes several minutes, which gives the impression of a freeze. Mesa 17.3 is faster by several orders of magnitude.

Ddumpsters 2018-01-29 github

Not sure if this helps or is supported but I decided to try it on windows just for the hell of it, not sure if it even worked or not but had some artifacts in loading screen, in the distance (when in-game), crashes and stuff in the logs so I assume it did.
SkyrimSE_d3d11.log
SkyrimSE_dxgi.log
couple notes:

  • had to rename d3d11_vk to d3d11, duplicate dxgi_vk and rename one of them to dxgi placing them in game root folder
  • not duplicating dxgi caused "Adapter is not a DXVK adapter" in logs and game wouldn't launch and having just dxgi made d3d11 complain about lack of dxgi_vk
  • trying to spin the loading screen model made the game crash
  • both new game (w/ alternate start mod) and load game worked (new game froze 3 seconds after loading), managed to swing my axe a couple times and open inventory but turning the camera too much made it just freeze, didn't even crash just wouldn't respond at all
  • couldn't alt tab at all
    I tried recording it with OBS but display capture and game capture didn't work (black screen captured)
?ghost 2018-02-01 github

Now it works

TTRPB 2019-04-28 github

Having switched from a 980Ti to a Radeon VII I am getting stuttering when moving between areas. I had initially attributed this to the shader cache being generated but even after loading the same area I get sutters when walking around despite a generally good framerate (60fps with occasional dips down to 52 at 4k with everything maxed).

DLLs