Don't want to see articles from a certain category? When logged in, go to your User Settings and adjust your feed in the Content Preferences section where you can block tags!
We do often include affiliate links to earn us some pennies. See more here.

What started as a large article talking to developers about Steam Play required splitting off before it became too big. For now, I give you a chat with the developer of DXVK, Philip Rebohle.

For those that aren't quite up to speed, DXVK is a project that provides a Vulkan-based D3D11 and D3D10 implementation for Wine. It's part of what makes Valve's Steam Play "Proton" work. In simple terms, games built to run on Windows via DirectX can be run with DXVK/Proton, so that they can be played on Linux.

I believe that DXVK and Steam Play are some of the most interesting projects to come out in the last few years, which could possibly help push Linux gaming forward. You can see more of my own thoughts in the previous article. I don't want to ramble on too much about what's already said, so here it is below.

GOL: Firstly, as the developer of DXVK, how did you get started with Vulkan and DirectX?

DXVK: “I've always had an interest in graphics programming and used OpenGL in the past for some hobby projects that never really evolved into anything useful, and started experimenting with Vulkan once it came out.

My first contact with D3D11 was actually when I tried to debug a rendering issue with a D3D11 game on wined3d, but since most of its concepts are very similar to what we have in OpenGL and Vulkan, it wasn't too hard to figure out. Except of course for the parts where Microsoft's documentation is terrible, and there are a lot of those... sorry, I just had to rant about that.”

GOL: What gave you the idea for DXVK? Why did you decide to make it?

DXVK: “It's a combination of being dissatisfied with the performance of wine's own D3D11 implementation, not wanting to dual-boot to Windows anymore, and being inspired by the VK9 project which I had been keeping an eye on for some time. And I really wanted to get one specific game to work.”

GOL: Since you're now contracted by Valve, how did that happen? Must have been quite a shock initially to have Valve approach you?

DXVK: “It wasn't all that spectacular - they contacted me when News made the round that DXVK could run Nier [NieR:Automata] back in late January, and when offered to work full-time on the project after a friendly chat, I couldn't really refuse.

There are a lot of things that probably would not have happened if Valve hadn't been backing the project - such as driver developers fixing their Vulkan drivers for DXVK or reporting bugs, or Vulkan getting a transform feedback extension.”

GOL: Do Valve give you much input in the direction of DXVK or do you continue to work on it freely, simply with the backing of Valve to allow you extra time on it?

DXVK: "There are some things that I probably wouldn't have done without them requesting it, such as adding OpenVR support or focusing on certain games early on, or trying to squeeze more performance out of specific workloads. But I spent most of the time just improving overall game compatibility and performance."

GOL: There have been a lot of people asking about anti-cheat, things like Easy Anti-Cheat, BattlEye and so on where the games won't run in Steam Play/Wine. People seem confused where the problem really is. Is it something Wine needs to solve to support them?

DXVK: "I'm certainly not an expert on anti-cheat or DRM technology, but those that don't work are typically very invasive, access Windows kernel APIs, rely on undocumented APIs, and may prevent debugging. All of that makes it very hard for Wine to support them."

GOL: How has the reception been to DXVK? Has it changed since Steam Play?

DXVK: “Depends on who you ask. People who just wanted to play their games on Linux were generally excited when DXVK started running more and more of their games, part of the wine community isn't exactly happy about it being a separate project, and there are of course those who dislike wine in general, but more on that later.

Has it changed since Steam Play? I don't think so. Things just have calmed down over time. Many of those using Proton now have been using Wine, Lutris, DXVK etc. before, and new users seem to be happy with Proton as a whole, which DXVK is a part of.”

GOL: Any hopes for the future for DXVK? How do you feel about developers concerns with it possibly causing less native Linux ports?

DXVK: “It should hopefully fulfil its purpose and make users who currently dual-boot or run some crazy VM setup for gaming switch to Linux as their primary gaming platform, and maybe attract a few new users altogether.

I genuinely don't know if it'll reduce the number of native ports. Maybe it will, maybe we'll get more ports due to a higher market share, maybe some studios will adopt Vulkan for better compatibility with Proton - anything can happen. And while I'd take a good port over wine any day of the week, there's one thing that everyone seems to forget in this discussion: It increases the number of playable games on our platform, and that just can't be a bad thing.”

 

Thanks again for having a chat! It's always great to get some background on such important projects like this. I have to agree with Rebohle's ending remark there too, having more games be compatible on Linux is going to be good for us in the long run.

We should have more articles up from other developers in future. Depending on responses this may come in one big feature or a few smaller articles over the next few weeks. We're casting a wide net, so if you're a developer of a game, a game engine, a game porter or anything of the sorts and want to have a chat about Steam Play, do get in touch!

Article taken from GamingOnLinux.com.
100 Likes
About the author -
author picture
I am the owner of GamingOnLinux. After discovering Linux back in the days of Mandrake in 2003, I constantly checked on the progress of Linux until Ubuntu appeared on the scene and it helped me to really love it. You can reach me easily by emailing GamingOnLinux directly. You can also follow my personal adventures on Bluesky.
See more from me
The comments on this article are closed.
All posts need to follow our rules. For users logged in: please hit the Report Flag icon on any post that breaks the rules or contains illegal / harmful content. Guest readers can email us for any issues.
56 comments
Page: «3/3
  Go to:

YoRHa-2B Sep 12, 2018
The official recommendation is to disable nvapi and nvapi64 for the prefix in winecfg, and that should be enough.
Unfortunately this isn't enough in all cases. Unreal Engine 4 has some super-stupid code in some of its rendering functions that tries to load nvapi if it hasn't already, and it will do it over and over again. This really killed performance in Dragon Quest 11, and it's going to kill performance in future UE4 games. I'm actually considering reporting all Nvidia cards as AMD cards by default as a workaround.


Last edited by YoRHa-2B on 12 September 2018 at 8:54 am UTC
Beamboom Sep 12, 2018
There are some things that I probably wouldn't have done without them requesting it, such as adding OpenVR support or focusing on certain games early on

Who were those games? Dude, Liam, you should have followed up that lead with a question on WHAT games Valve wanted him to focus on? That'd be really exciting to hear!

Can we now hope for... Fallout 4? Surely that must be the game they asked him to give focus? :)
rustybroomhandle Sep 12, 2018
@YoRHa-2B I have a question for you, if you are still around.

One of the games on the first whitelist is "The Last Remnant". a game which is no longer for sale on Steam. I'm guessing they stopped due to the PS4 launch and Sony being jerks. What's interesting is that the discontinuation of sale was announced before the Steam Play whitelist was declared.

Was this game chosen for whitelist on purpose because it's being discontinued?

My speculatron says this makes sense, because presumably this also means that the game will stop getting updates, and very possibly will stop working on Windows in future, but it will carry on working on Linux/Proton.
YoRHa-2B Sep 12, 2018
@rustybroomhandle I have no part in the whitelisting process.
lucifertdark Sep 12, 2018
If we knew what the criteria for adding a game to the White list was it might help with the White listing process. It would certainly cut down all the false alarms on Github.
YoRHa-2B Sep 12, 2018
If we knew what the criteria for adding a game to the White list
Pretty simple actually, and I'm pretty sure they mentioned it when they launched Proton: The experience has to be ~the same as on Windows, ignoring some performance hit.


Last edited by YoRHa-2B on 12 September 2018 at 10:32 am UTC
johndoe Sep 12, 2018
@YoRHa-2B Do you have insight in the release schedule of Proton and if yes you are allowed to share?
I mean when will Valve upgrade Proton to 3.15 for example?
With this release more games would run out of the box.

Edit: Maybe Valve could add a Proton "experimental" release (wine + proton patches) shortly after every new wine release?!


Last edited by johndoe on 12 September 2018 at 11:07 am UTC
Whitewolfe80 Sep 12, 2018
I think, Proton is great. I have already installed a couple of games I got through Humble Bundle or somewhere else that were windows only. My thanks to everybody who has contributed to this. First of all, the Wine guys, Valve, Mr. Philip Rebohle here and of course all those other people that made this possible.

Curious:
What do the Wine people themselves think? I mean, the actual developers/contributors?

What are the chances DXVK will become part of Wine?
Or to be more general: Other parts of Proton?

Silm to none given that Valve is actively paying for the development of DXVK while it intially supported wine financially am not sure if that is ongoing that a question for valve that maybe gol can ask. However valve are at least contrubuting the code for proton to wine and its fix commits which is what lutris has currently updated to its basically wine with protons patches.
lucifertdark Sep 12, 2018
If we knew what the criteria for adding a game to the White list
Pretty simple actually, and I'm pretty sure they mentioned it when they launched Proton: The experience has to be ~the same as on Windows, ignoring some performance hit.
You're right they did, hopefully as time goes on & improvements are made there should no performance hit at all, one day perhaps. :D
BrazilianGamer Sep 12, 2018
Great and really productive talk. Let's hope Proton and DXVK get better and better really fast. Not all heroes wear capes right? Thanks Philip. Thanks Valve ^_^
Grimfist Sep 12, 2018
Well, I think it is time for a very big "Thank You" and a heartwarming hug for Mr. Philip Rebohle!

DXVK was the last and much needed coffin nail for my Windows Partition. The Blizzard games were still my last point I was booting into Windows, but since DXVK (among other improvements like esync and pba in Wine) I migrated all my stuff to Linux now. Since yesterday my Windows Partition is gone, hopefully forever.

Now, I am free ...
Liam Dawe Sep 12, 2018
There are some things that I probably wouldn't have done without them requesting it, such as adding OpenVR support or focusing on certain games early on

Who were those games? Dude, Liam, you should have followed up that lead with a question on WHAT games Valve wanted him to focus on? That'd be really exciting to hear!

Can we now hope for... Fallout 4? Surely that must be the game they asked him to give focus? :)
Yeah yeah, hindsight is a great thing isn't it. Besides, I wouldn't want to remove the fun of seeing you guess ;)
Ardje Sep 12, 2018
PS. Imagine how good Steam Machines 2 will be! Just don't ask for Steam Machines 3.
But at least we can expect Steam Machines episode 1 and 2 too...
technatica Sep 12, 2018
This is a great technology for Linux and gamers.

What will truly drive game companies to native ports is gamers seeking performance. If a native port will run at 2 FPS faster than the Windows game itself on equivalent hardware, gamers will come to Linux in droves.

It will take more than one example, ie. several top-tier games ported to Linux, but at that point, the floodgates will be open.
Ardje Sep 12, 2018
And don't forget that cro-team has stutter-fixes for high end hardware that *only* works on linux because that was the only platform that allowed to peek into it.
Shmerl Sep 13, 2018
There are some things that I probably wouldn't have done without them requesting it, such as adding OpenVR support or focusing on certain games early on, or trying to squeeze more performance out of specific workloads.

@YoRHa-2B: Was The Witcher 3 one of those games? It started working with DXVK quite rapidly. I wonder if Valve were interested in that in particular, because of the past ads of "Coming to SteamOS" for TW3.

In a sense, if they'll make sure TW3 works perfectly through Wine+dxvk/Proton, they can at least say that those ads aren't false anymore.


Last edited by Shmerl on 13 September 2018 at 3:37 pm UTC
While you're here, please consider supporting GamingOnLinux on:

Reward Tiers: Patreon. Plain Donations: PayPal.

This ensures all of our main content remains totally free for everyone! Patreon supporters can also remove all adverts and sponsors! Supporting us helps bring good, fresh content. Without your continued support, we simply could not continue!

You can find even more ways to support us on this dedicated page any time. If you already are, thank you!
The comments on this article are closed.