Live data from Hacker News

Valve Is Working on Another Extension to Help in Direct3D-over-Vulkan

phoronix.com

101–110 of 308 posts

Re: Valve Is Working on Another Extension to Help in Direct3D-over-Vulkan

#101
post #46

Most game engines work with some kind of abstraction to unify access to the underlying graphics APIs such as D3D, DX12, OpenGL, Vulkan and Metal (for example in Unity there's GraphicsDevice). Does anyone know if there's any work being done to create an open source abstraction like that? It would be neat if it were possible for open source games and game engines to share the work being done to ease cross-platform deve…

OpenGL/Vulkan are open source, multi-platform abstraction layers. Of course, the graphics API isn't the only thing you have to get to work on multiple platforms. There's also the sound stack, networking, window management, and so forth.

I think what you're getting at is some kind of all-in-one platform that abstracts away all of those lower level interfaces. In that case, that's basically what Unity is. Unity (and other cross-platform engines) do abstract away the metal in an open source, cross-platform set of APIs/tooling.

If you're more interested in application development, as opposed to videogame development, there's toolkits like QT and VM-based environments like Java and Electron. The efficaciousness of these approaches do vary, however. Java UIs are famously ugly, due to how poorly they integrate with the host OS, Electron UIs are famously slow, due to literally being standalone web browser instances, and QT UIs are famously finicky, due to trying to abstract a lot less than the other approaches.

Re: Valve Is Working on Another Extension to Help in Direct3D-over-Vulkan

#102

Valve is doing god’s work when it comes to Linux gaming. I have played over 40 hours of GTA V without many troubles. The game looks great and performs great. So glad I could get rid of my windows install.

I think that the only gaming company that actively improve Linux gaming is only Valve. Compare this to Stadia, where I never see any news on them contributing to the Linux gaming stack

Stadia does have a number of open source repos oh GitHub. https://github.com/googlestadia

*I work at Google but not on anything related to Stadia.

Re: Valve Is Working on Another Extension to Help in Direct3D-over-Vulkan

#103
post #36

Earlier quoted context omitted.

I'm thankfully for the native games from Valve on Linux. And also for improving gaming on Linux in general. Steam? Steam itself is not necessary and is just another system to lure users and developers into a Vendor Lock-In. Everything useful it provides should be part of libraries. In a better world - we would use a package manager or Flatpak to install games. I'm sick of the software industry, every big company trie…

> Steam itself is not necessary and is just another system to lure users and developers into a Vendor Lock-In This ignores the history of how Steam came about in the first place. The PC gaming industry was basically dying because physical distribution was expensive, which made the games expensive too, so a lot of users just pirated games (by downloading them from the internet) because it was easier. Valve recognized…

Heh, are you saying that Steam could have been (or is) the equivalent of Snap on Ubuntu?

https://snapcraft.io/about

Re: Valve Is Working on Another Extension to Help in Direct3D-over-Vulkan

#104
post #46

Most game engines work with some kind of abstraction to unify access to the underlying graphics APIs such as D3D, DX12, OpenGL, Vulkan and Metal (for example in Unity there's GraphicsDevice). Does anyone know if there's any work being done to create an open source abstraction like that? It would be neat if it were possible for open source games and game engines to share the work being done to ease cross-platform deve…

OpenGL/Vulkan are open source, multi-platform abstraction layers. Of course, the graphics API isn't the only thing you have to get to work on multiple platforms. There's also the sound stack, networking, window management, and so forth. I think what you're getting at is some kind of all-in-one platform that abstracts away all of those lower level interfaces. In that case, that's basically what Unity is. Unity (and ot…

Right now that cross platform abstraction layer is the Web.

- https://get.webgl.org/webgl2/

- https://developer.mozilla.org/en-US/docs/Web/API/WebSockets_...

- https://webrtc.org/

Re: Valve Is Working on Another Extension to Help in Direct3D-over-Vulkan

#105
I've fascinated with what Steam is doing for gaming on Linux. We'd been moving at a slow pace for years, and suddenly, we're jumping in strides.

I'm likewise fascinated about how terrible Steam's CLIENT works on Linux. Like, no hidpi support, (it's just blurry), notifications don't work, and lots of other stuff is broken. Sometimes closing a popup closes the main window, but only for _some_ kinds of popups. It also only works via X11 / XWayland.

Fortunately, they keep getting all the really hard stuff done.

Re: Valve Is Working on Another Extension to Help in Direct3D-over-Vulkan

#106
post #11

Valve is doing god’s work when it comes to Linux gaming. I have played over 40 hours of GTA V without many troubles. The game looks great and performs great. So glad I could get rid of my windows install.

If I remember correctly, Valve started doing this some time ago as an "insurance policy", when Microsoft spoke about locking down Windows (before they introduced Windows Store). It is amazing to see how far Linux gaming has come since then. 10 years ago almost none of the big games worked, 5 years ago lots of games worked after fiddling with wine config, and now most of the games I have tried work out of the box afte…

Yeah, Steam continuously investing on Linux is what keeps MS in check.

Microsoft knows they can't lock down the OS while gaming on Linux [at least] works.

It's truly an insurance policy, and they have to pay it each month -- if they let Linux gaming lag behind long enough, they lose their ground on MS.

Re: Valve Is Working on Another Extension to Help in Direct3D-over-Vulkan

#107

This is nice and all but they need to fix things like alt-tabbing in an out of a game. Many games just crash. I know it sounds dumb but sometimes when organising a game or using discord you need to alt-tab from the game to the chat app. This almost never happens with Windows unless the games are old. Also performance when streaming via discord or OBS significantly drops the framerate even on games my rig can play at…

Yeah. It's not just alt-tabbing, merely losing focus.

I've a second monitor where I run discord (and lots of other shit), so if I even focus on it for a second: the game is dead.

Generally, you can work around this by configuring wine to use a virtual desktop. The game never picks up its focus-loss.

Re: Valve Is Working on Another Extension to Help in Direct3D-over-Vulkan

#108
post #92

This is nice and all but they need to fix things like alt-tabbing in an out of a game. Many games just crash. I know it sounds dumb but sometimes when organising a game or using discord you need to alt-tab from the game to the chat app. This almost never happens with Windows unless the games are old. Also performance when streaming via discord or OBS significantly drops the framerate even on games my rig can play at…

> This is nice and all but they need to fix things like alt-tabbing in an out of a game. This is super hard to get right. It's somewhat wonky on Windows to begin with (we have found plenty of games where it's broken on Windows), and then you have to factor in that X doesn't work the same way, and there are a hundred different window managers, which all work different ways. It should be significantly improved in 5.13,…

> This is super hard to get right.

Not _really_. The issue is that games are trying to do god-knows-what when they lose focus. In reality, they just need to ignore this happening.

Regular applications handle losing focus just fine, and games would too -- unless you try to do magic funky stuff when you lose focus (my guess is that they do this to work around funky WM issues on window that don't exist on Linux).

Re: Valve Is Working on Another Extension to Help in Direct3D-over-Vulkan

#109
post #46

Most game engines work with some kind of abstraction to unify access to the underlying graphics APIs such as D3D, DX12, OpenGL, Vulkan and Metal (for example in Unity there's GraphicsDevice). Does anyone know if there's any work being done to create an open source abstraction like that? It would be neat if it were possible for open source games and game engines to share the work being done to ease cross-platform deve…

I believe bfgx[0] is similar to what you're describing. It's been around since before the Vulkan/DX12/Metal era so the abstractions are more similar to OpenGL/DX11 where you don't have concepts like command buffers and command queues etc, which might be a turn off.

Big open source projects still seem to roll their own solution for this, which I imagine is both for historical reasons but also because there might be a fear that using a library like this could leave your hands tied when you need to do some API-specific workaround.

0. https://github.com/bkaradzic/bgfx

Re: Valve Is Working on Another Extension to Help in Direct3D-over-Vulkan

#110

Earlier quoted context omitted.

Precisely, and developing for Windows is much easier than Linux anyway because it doesn't suffer from the same "lets break userspace every 2 years" problem.

Yeah, there's never any issues keeping games working on Windows...

There are sometimes problems, sure, but compared to Linux, where an application compiled 2 years ago for the same distro often won't work on the current version, it's pretty damned good at compatibility.
Post reply on HN