You can sign up to get a daily email of our articles, see the Mailing List page!
Support us on Patreon to keep GamingOnLinux alive. This ensures we have no timed articles and no paywalls. Just good, fresh content! Alternatively, you can donate through Paypal, Flattr and Liberapay.!

An interview with the developer of DXVK, part of what makes Valve's Steam Play tick

Posted by , | Views: 18,250

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!

104 Likes, Who?
We do often include affiliate links to earn us some pennies. We are currently affiliated with GOG and Humble Store. See more information here.
67 comments
Page: 1/7»
  Go to:

jasonm 11 September 2018 at 3:59 pm UTC
It's sad that people would be upset that Proton is a separate project than Wine. Valve has in my opinion done everything right with this. They've hired the actual Wine devs to make changes and made everything 100% open source which allows the Wine devs to backport anything they want into the Wine project. Valve needed this to be a separate project so they wouldn't be hindered by philosophies that differ from their own. They are a business and they need it to work for gaming, not office packages, not utilities, etc. They needed this project to be separate to make leaps and bounds and reach their long-term goals without snags. Whoever is upset about that simply isn't using their heads about how much Valve has done for the Wine project and Linux gaming.


Last edited by jasonm at 11 September 2018 at 5:06 pm UTC. Edited 2 times.
crabel 11 September 2018 at 4:26 pm UTC
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?
Arehandoro 11 September 2018 at 4:45 pm UTC
Great interview! Thanks Liam and Philip

I pretty much have the same opinion that Philip. Looking positive to the Linux Gaming future for now.
RFSharpe 11 September 2018 at 4:46 pm UTC
Great interview! I will be looking forward to upcoming interviews with the other developers.

I do not have a great deal of knowledge about using Steam Play/Wine to run Window games. I have kept my life simple by only playing Steam games that support Linux. This approach has worked out brilliantly, but I am curious about the compatibility issues with various Windows games.

Which Windows based games are the most notorious for having invasive DRM and anti-cheat technology?
damarrin 11 September 2018 at 4:56 pm UTC
The Linux community unfortunately has the same mentality as any other community and the if-you're-not-with-us-you're-against-us attitude can be very strong and there'll be always someone who is very vocally unhappy or outraged by something.

Whereas it all boils down to us using the OS we want to use (which means software makers must support us if we want our computers to be useful) and us wanting as many people as possible to use it (which means the OS must be fit for general use).

We're getting there, but the constant bickering and animosity between the different parts of the open source community is not helping.
jasonm 11 September 2018 at 5:00 pm UTC
damarrinThe Linux community unfortunately has the same mentality as any other community and the if-you're-not-with-us-you're-against-us attitude can be very strong and there'll be always someone who is very vocally unhappy or outraged by something.

Whereas it all boils down to us using the OS we want to use (which means software makers must support us if we want our computers to be useful) and us wanting as many people as possible to use it (which means the OS must be fit for general use).

We're getting there, but the constant bickering and animosity between the different parts of the open source community is not helping.

You're right here. I could understand if Valve tried to close up everything and not leave everything open source. They have given everything to the open source community and even helped to financially support MANY open source projects. I simply don't understand how someone would have any issues with what Valve is doing, open source advocates should be delighted to see so much open source code advancements in the way of 3d rendering on our platform. Hell, Proton could even eventually help the BSD family to have more games eventually.
codythedragondude 11 September 2018 at 5:08 pm UTC
i very much see some publishers and devs going ok so they will use proton to play our games so we have demand

now lets port our next game native now that we know linux users actually want games from us
fabry92 11 September 2018 at 5:11 pm UTC
Nice interview!
EndeavourAccuracy 11 September 2018 at 5:12 pm UTC
Philip RebohleAnd I really wanted to get one specific game to work.

So... which game?

Philip RebohleThere are some things that I probably wouldn't have done without them requesting it, such as adding OpenVR support [...]

Unless I'm mistaken, Beat Saber uses DirectX and OpenVR (for Vive), which means DXVK is part of what allows me to play the game on Linux with Proton. I'm quite happy with Valve's request and your work.
damarrin 11 September 2018 at 5:20 pm UTC
codythedragondudei very much see some publishers and devs going ok so they will use proton to play our games so we have demand

now lets port our next game native now that we know linux users actually want games from us

That's the way I see it as well. Perhaps Valve can convince developers to do the little extra effort to make sure their game works OK with Proton (or, dare I even say, to take Steam Play and Proton into account when choosing middleware and making their game) and then, when Linux market share inevitably grows, developers will say OK, now it makes sense to make a native version.
  Go to:
While you're here, please consider supporting GamingOnLinux on Patreon or Liberapay. We have no adverts, no paywalls, no timed exclusive articles. Just good, fresh content. Without your continued support, we simply could not continue!

We also accept Paypal donations and subscriptions! If you already are, thank you!

Due to spam you need to Register and Login to comment.


Or login with...

Livestreams & Videos
Community Livestreams
  • MMOre Fun: „Guild Wars 2“ (via Wine)
  • Date:
See more!
Popular this week
View by Category
Contact
Latest Comments
Latest Forum Posts