Check out our Monthly Survey Page to see what our users are running.

D9VK is no more as it merges with DXVK, making DXVK a D3D 9/10/11 to Vulkan layer

Posted by , | Views: 21,221

It's happened, the D9VK and DXVK projects have officially merged. This means DXVK is now the all-encompassing project to translate D3D 9/10/11 to Vulkan for Wine.

Only a few hours ago the pull request was accepted and so they're now one awesome project, meaning D9VK will now be developed directly in the DXVK project. This does make a lot of things easier and simpler overall, since you only need to keep track of one project and they will now update together.

From the actual pull request, Ashton noted these features still needed to be worked on:

  • Fixed function bumpmapping
  • Fixed function premodulation
  • Software cursor (hardware cursor is currently implemented)
  • ComposeRects (from D3D9Ex, however I have no test case for this)
  • Custom Border Color (needs ext)
  • Depth Bias Fixes (needs ext)

Apart from that, the usual bug fixing.

Congratulations to D9VK developer Joshua Ashton and DXVK developer Philip Rebohle, together they've certainly helped pushed Linux gaming into new territory.

Article taken from GamingOnLinux.com.
Tags: Update, Vulkan, Wine
53 Likes, Who?
We do often include affiliate links to earn us some pennies. We are currently affiliated with GOG, Humble Store and Paradox Interactive. See more information here.
About the author -
I am the owner of GamingOnLinux. After discovering Linux back in the days of Mandrake in 2003, I constantly came back to check 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.
See more from me
43 comments
Page: «3/5»
  Go to:

Liam Dawe 16 December 2019 at 1:40 pm UTC
tonyrh
Liam Dawe
tonyrh
Liam Dawe
Sir_DiealotIsn't DXVK that project that just went into maintenance mode because it's not feasible to develop it further?
No, that was other sites making a mountain out of a little GitHub comment rant. Don't read into it.

Isn't GitHub the only channel the DXVK dev uses to communicate? In those little comment rants he clearly stated that after the merge of D9VK his project is going maintenance mode, because it's a "fragile, unreliable and frustrating maintenance nightmare". AFAIK he did not retract that anywhere. Do you know something we don't know or what?
No it's not, they have their own Discord. Don't take comments made out of frustration, as actual plans.

TIL Discord is official, GitHub is not.
Said nothing about official, I simply answered your question on GitHub not being the only place the DXVK people communicate.
rkfg 16 December 2019 at 1:43 pm UTC
Eike
rkfgYes, Wine is written in pure C.

No wonder it's a maintenance nightmare. ;)
Errrr, wasn't that quote about DXVK itself and not Wine? I'd like to read the whole story.
TheSHEEEP 16 December 2019 at 1:43 pm UTC
View PC info
  • Supporter
rkfg
Eike
rkfgDXVK has a "fundamental flaw" and that is the language it's written in. Wine doesn't accept C++ code, unfortunately.

Now I wondered what they're using.
Pure C?!?
Yes, Wine is written in pure C.
Guess that is one way to make sure a project never has too many people working on it.
What a waste of potential.

Pure C is fine for smaller projects or concise little libraries.
But big ones purely in C is just nightmare fuel. Go take a look at the FFmpeg sources if you don't believe me.

Alright, merge Wine into DXVK, then ;)
C++ isn't picky about having some pure C code within.


Last edited by TheSHEEEP on 16 December 2019 at 1:45 pm UTC
Creak 16 December 2019 at 1:53 pm UTC
View PC info
  • Supporter
  • Top Supporter
Liam Dawe
Sir_DiealotIsn't DXVK that project that just went into maintenance mode because it's not feasible to develop it further?
No, that was other sites making a mountain out of a little GitHub comment rant. Don't read into it.

@Liam: Might be worth doing an article about it, I was like @Sir_Dialot, thinking DXVK was slowly dying in place of another project.. Although I have been reading mainly Linux news every day.
BielFPs 16 December 2019 at 2:01 pm UTC
TheSHEEEPGood. Now merge DXVK with Wine.

I hope they don't do this. I'm not a fan of redundant work too, but I think maintaining wine as generic as possible it's the best way to keep things working, while projects like proton can "fork" it to our specific needs (games above everything else in our case) without the risk to break something not related to it.

As long as both projects continue to help each other, this current approach is the best option in my opinion
Creak 16 December 2019 at 2:09 pm UTC
View PC info
  • Supporter
  • Top Supporter
TheSHEEEPGuess that is one way to make sure a project never has too many people working on it.
What a waste of potential.

Pure C is fine for smaller projects or concise little libraries.
But big ones purely in C is just nightmare fuel. Go take a look at the FFmpeg sources if you don't believe me.

Alright, merge Wine into DXVK, then ;)
C++ isn't picky about having some pure C code within.
Just to be the devil's advocate for a few minutes: good written C code is not so bad. After programming in C++ for more than a decade, I can now see the appeal in C code (sometime). It boils down to being leaner than a C++ code.

Also, for some reason, the C++ standard has very weird statement. For instance, there is no standard over name mangling. The consequence is that each compiler has their own name mangler, which makes the binaries incompatible.

There is a solution to that... which is to go back to C mangling using this syntax:
extern "C"
{
    // Your C++ code.
}


For each problem, there is always "a way" to work around, but this is one example of how messed up C++ can be sometime, whereas simple C code doesn't have these problems.

That being said, the more it goes, the less I want to code in C or C++. My main reason why is the pre-processor. How come a modern language like C++ still needs another language (i.e. the pre-processor language) to work? For instance: #include...


Last edited by Creak on 16 December 2019 at 2:10 pm UTC
BielFPs 16 December 2019 at 2:29 pm UTC
Liam Dawe
tonyrh
Liam Dawe
Sir_DiealotIsn't DXVK that project that just went into maintenance mode because it's not feasible to develop it further?
No, that was other sites making a mountain out of a little GitHub comment rant. Don't read into it.

Isn't GitHub the only channel the DXVK dev uses to communicate? In those little comment rants he clearly stated that after the merge of D9VK his project is going maintenance mode, because it's a "fragile, unreliable and frustrating maintenance nightmare". AFAIK he did not retract that anywhere. Do you know something we don't know or what?
No it's not, they have their own Discord. Don't take comments made out of frustration, as actual plans.

This situation reminds me that case with the devs of Linux mint back in april. I hope we can get a feedback direct from him about this case.
Liam Dawe 16 December 2019 at 2:35 pm UTC
Creak
Liam Dawe
Sir_DiealotIsn't DXVK that project that just went into maintenance mode because it's not feasible to develop it further?
No, that was other sites making a mountain out of a little GitHub comment rant. Don't read into it.

@Liam: Might be worth doing an article about it, I was like @Sir_Dialot, thinking DXVK was slowly dying in place of another project.. Although I have been reading mainly Linux news every day.
Ask and thou shall receive, just wanted to wait a bit for the right time to have the statement. See here.
TheSHEEEP 16 December 2019 at 2:36 pm UTC
View PC info
  • Supporter
Creak
TheSHEEEPGuess that is one way to make sure a project never has too many people working on it.
What a waste of potential.

Pure C is fine for smaller projects or concise little libraries.
But big ones purely in C is just nightmare fuel. Go take a look at the FFmpeg sources if you don't believe me.

Alright, merge Wine into DXVK, then ;)
C++ isn't picky about having some pure C code within.
Just to be the devil's advocate for a few minutes: good written C code is not so bad. After programming in C++ for more than a decade, I can now see the appeal in C code (sometime). It boils down to being leaner than a C++ code.
The problems really only arise in large projects.

Code is about 10x more often read than written (or more, even).
Thus, making code clear and being able to follow it is more important than either raw speed (especially since C++ isn't really slower than C) or having to write less.
In large projects in pure C, you will have algorithms spanning dozens to hundreds of functions over possibly just as many files. You invariably end up with endless amounts of spaghetti code. It is the inherent flaw of procedural programming - awesome for smaller scales, nightmarish for larger scales.
While the OO-focus in C++ at least makes it a lot less likely to end up with code like that (though not impossible, obviously), as code that belongs together is way more likely to be grouped together and the concept of objects which "do things" is inherently more friendly to the human brain.

And for some reason I will never understand, long-time C coders tend to almost never write comments and almost never have variable names longer than "a, b, c, d, v, x, z"...
It is the devil's work, I have no doubts about it.

Either way, what makes no sense to me is not using C, but not allowing C++ at all.
Have the C++ code be exposed via C-style functions (the famous extern, indeed) so that the core devs can keep their precious. Compile apart, then link.
I just don't see the point in not doing it that way, other than some weird sense of purity.


Last edited by TheSHEEEP on 16 December 2019 at 2:38 pm UTC
edo 16 December 2019 at 3:07 pm UTC
Hori
Liam Dawe
Sir_DiealotIsn't DXVK that project that just went into maintenance mode because it's not feasible to develop it further?
No, that was other sites making a mountain out of a little GitHub comment rant. Don't read into it.
Pretty ironic how this mountain of a code change just got merged into that same project.
Eh, what can you do? Fake news is one of the bigger problems in the modern day.
He did say he was going to include d9vk and some vulkan extensions before the maintance mode
  Go to:
While you're here, please consider supporting GamingOnLinux on Patreon, Liberapay or Paypal. We have no adverts, no paywalls, no timed exclusive articles. Just 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!

You need to Register and Login to comment, submit articles and more.


Or login with...

Livestreams & Videos
Community Livestreams
  • Story Time: „Unavowed“ (Wine)
Popular this week
View by Category
Contact
Latest Comments
Latest Forum Posts