this post was submitted on 22 Dec 2023
21 points (95.7% liked)

Linux

47237 readers
3343 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
top 8 comments
sorted by: hot top controversial new old
[–] [email protected] 1 points 9 months ago

The README does not say which DirectX version they are targeting. The screenshot show "DirectX 0". Looking at the code, I see a directory called "d3d9", but those files are mostly empty.

So yeah... nothing to see here. Maybe in 5 or 10 years.

[–] [email protected] 1 points 9 months ago* (last edited 9 months ago) (1 children)

This is barely explained and the readme gave me more questions than answers.

I immediately thought it’s going to be a library for Wine to use instead of DXVK/VKD3D.

If that’s only for developers to build Linux ports, very little to no real-world use is expected, unless it’s somehow can offer effortless conversions. Even then developers are likely to prefer relying on Proton/Wine to simply have single binary for both platforms, rather than maintaining them separately.

I wonder how much work it will take for drivers to support the API… Or maybe it won’t need anything in Mesa and will somehow work directly on DRM with strictly platform-agnostic code if that’s possible?

Offering better performance than the likes of DXVK is brave to put it mildly. In many scenarios it can already match or surpass native Windows performance even when running Windows binaries.

[–] [email protected] -2 points 9 months ago* (last edited 9 months ago)

This is barely explained and the readme gave me more questions than answers.

make a pull request to change the readme then

[–] [email protected] 0 points 9 months ago (1 children)

How is this different from DXVK?

[–] [email protected] 0 points 9 months ago (1 children)

Iirc, DXVK translates DirectX API calls to Vulkan calls, meaning the original game renders to Vulkan in the end. With this, no translation will be needed which should result in slightly better performance and more likely, much better compatibility.

[–] [email protected] 2 points 9 months ago

IIRC the translation overhead is usually negligible and sometimes results in better performance due to Vulkan being very performant.

[–] [email protected] 0 points 9 months ago* (last edited 9 months ago) (1 children)

Why is this not being developed inside Mesa? There's even precedent for it; gallium9.

[–] [email protected] 1 points 9 months ago

Because DirectX apps typically do not only call into DirectX but also the win32 API, since DirectX has historically been a windows-only API. Merging this into mesa would only bloat mesa while not really offering support for many applications at all.

This is a great project in general, but it's quite overshadowed by DXVK which does the same except it translates DX calls to vulkan ones and has excellent success rates in proton and derivatives. I guess this is mildly useful for systems that don't support vulkan but want to run DX apps in raw wine or simply for people who wish not to use DXVK - competition is good for the ecosystem.