r/Vive•
coldpie1

Any indications of SteamOS/Linux support?

Question

I'm super interested in the Vive, but I'm worried about their support for SteamOS and Linux. I use Linux exclusively, and while Valve has at least paid lip service to supporting SteamOS, I'm worried about whether they will actually give it real support. Anyone with a Pre tried it out? Any public statements of support from HTC or Valve?

Posted Feb 24, 2016, 4:13 PM UTC

1210
Duhpe•

I get your point and in most circumstances I'd be cautious to expect anything without official confirmation.. That being said SteamOS is Valves OS and I can't see them not supporting it with their VR Solution, it would surprise me quite a bit.

6
rkido•

On the SteamVR side, based on what we've been seeing in the latest Steam Beta Client updates for SteamOS, it looks like SteamOS support for Vive/SteamVR is just around the corner. However, the bigger problem is that using OpenGL sucks. The current generation of VR requires rock-solid 90fps, and OpenGL is extremely difficult to code and its drivers are really unpredictable. Even Valve with all their resources struggled to get good performance with OpenGL, and OpenGL drivers are consistently slower than DX drivers due to less time spent on optimizing them.

Note that nearly all of the wonderful Vive experiences we've been reading about use Unity. Unity's OpenGL performance simply isn't good enough, and I don't blame them. I think it's a waste of time to use OpenGL at all.

The only way we will get a good VR experience with SteamOS is with Vulkan, which was just released last week, and which isn't yet supported in Unity. In fact, VR will be substantially better with Vulkan because it allows you to guarantee a fixed framerate. DirectX drivers are similar to OpenGL drivers in that they do all sorts of weird complex things while the program is running that can result in frame drops.

In short, the future is bright for VR on SteamOS, but there is no way the games will be ready for SteamOS by day one as Unity needs more time to build a solid Vulkan renderer. Once we have that, I'm hoping there will be a nice "SteamVR Machine" running SteamOS bundled with the Vive that becomes the preferred way to experience VR. With a totally new platform it's a prime opportunity to cut Microsoft out of the equation — which is very much needed since they have a massive conflict of interest with traditional PC gaming (the Xbox and the Windows Store).

6
Marenz•

Do you have a source for your claims

Even Valve with all their resources struggled to get good performance with OpenGL, and OpenGL drivers are consistently slower than DX drivers due to less time spent on optimizing them.

?

2
rkido•

For the thing about Valve's early struggles, see here: http://www.phoronix.com/scan.php?page=news_item&px=MTA3OTY

Also note that although they claimed to get better performance in OpenGL for Left 4 Dead 2, that better performance is nowhere to be seen. All Source 1 games perform a little slower in OpenGL, though they eventually got it polished enough that it doesn't really matter.

However, they built Source 2 from the ground up for OpenGL performance, and the OpenGL renderer still isn't as fast as the DirectX 9 renderer. Assuming they put every resource they could into making sure the OpenGL renderer is as good as it can be, the only culprit left is the graphics drivers. It is well-known that OpenGL drivers don't receive as much optimizations from NVIDIA and AMD as DirectX drivers, so I shouldn't need to find a source on this for you.

You can test Source 2 engine performance yourself if you have both a Linux and Windows install. Just benchmark Dota 2 on Windows (OpenGL vs. DirectX 9 vs. DirectX 11) and then on Linux (OpenGL only for now). If you have a recent NVIDIA card, from fastest to slowest it should go something like this: DirectX 9, OpenGL (Linux), OpenGL (Windows), DirectX 11. However, if you have an AMD card, OpenGL will probably be faster on Windows.

Of course none of this is relevant in the age of Vulkan, since with Vulkan, optimizations happen in the engine, not in the graphics drivers. Waiting on wider Vulkan support in engines and then VR-on-SteamOS should hopefully follow closely on its heels. There is no way Valve would simply abandon the enormous investments it's made into Linux to date.

2
roboticjizz•

This is a really opinionated answer. Yes, Valve did struggle initially with OpenGL. What you left out is that they are porting Direct3D software to OpenGL - and old Direct3D at that. From a programmer's perspective, this is a difficult task and code that is oriented around and optimized for Direct3D will be trouble sometimes (many small batches vs fewer larger batches.) However Valve themselves can be seen praising OpenGL here: https://www.youtube.com/watch?v=btNVfUygvio and during other presentations at Steam Dev Days 2014.

Saying GL is a mess is not untrue. Saying that driver support for GL is a mess is also not untrue. Saying that GL has poor performance is, however, very much an opinion. GL is an interface. An API. It is not a car, or even a concrete thing - The only concrete "OpenGL" is a PDF describing a graphics API that can be implemented by drivers and utilized by other software, and while OpenGL performance has been shitty on e.g. Mac OS X for various other reasons, performance for OpenGL on Linux vs Direct3D on Windows has been competitive over time.

Some of the reasons GL gets a bad reputation are downright sabotage. MS is currently not shipping accelerated GL drivers with Windows anymore, a rather stark contrast to when OpenGL was the primary 3D API of Windows 95 and software that came with Windows was using it (including the original 3D screensavers!)

I also don't really get the "OpenGL is difficult to code for" thing. More difficult why? Loading extensions is stupid yeah, but there's partial blame to place on Microsoft for their opengl32.dll library only exporting GL 1.1 symbols literally up to today.

1
elect86•

That's the problem with GL 3.x

GL 4.x and AZDO extensions converge a lot versus Vulkan paradigms (bindless textures, immutable storages, MDI, etc...) giving a tangible boost and helping a lot against inconsistent performances.

The problem is that the vendors don't always keep their GL drivers updated, decreasing the installed base..

That link you mentioned, is from 2012 and regards shader compilation time, which nowadays is not really an issue anymore..

You may want to look at some benchs about

http://www.slideshare.net/CassEveritt/approaching-zero-driver-overhead

especially pg. 82, 98 and 120

I also run some benchs and I can confirm the results, https://github.com/elect86/glTest

1
rkido•

So are you saying that predictable, consistent (no sudden drops), and strong performance (D3D comparable) is possible with GL4 with AZDO?

If so, I'm certainly glad, though I haven't heard of SteamOS games using those features. More importantly, do Unity and Unreal's current renderers make it easy to get such performance?

1
elect86•

I think so, but I have no proof

1
xxann5•

Officially they said that SteamOS would not be the focus until after launch(that sucks but i cant blame them). However they have been pushing out SteamVR updates for SteamOS, just not nearly as meany as Windows.

I have little doubt that Valve will fully support SteamOS in the very near term. They have put allot of work in that OS, not to mention Vulkan. I fully expect for them to double down there efforts into SteamOS, both VR and none-VR, after the Vive is launched and SteamVR stabilizes. Especially now that Vulkan has officially been released.

Having full control over the gaming stack looks to be very important to Valve, and I think its a good move on there part. Personally I only have a Windows boot partition to play games that are currently not supported on SteamOS. There is nothing quite like booting Linux and starting up a AAA game! Makes me feel all warm and fuzzy inside! :)

4
coldpie1OP•

So the fact that SteamVR is getting updates on SteamOS means that a game developer could theoretically create a Vive game for SteamOS, right?

1
xxann5•

Yes??? No idea. not even sure what the updates are consisting of just that there have been some.

1
YAOMTC•

Where did they say, officially, that SteamOS would not be a focus until after launch? I remember some site reporting something on that issue a while back, but nothing official.

1
xxann5•

I am really not sure. I do recall seeing that somewhere though. So take that for what it is. I for one really hope I am wrong.

2
waitingforvrYou kids can get off my virtual lawn! •

Jeff Gattis said linux would be supported at launch back in August last year. thats all I know. I think he's left HTC for leap motion since then though..

2
KrAzYkArL18769•

He joined Magic Leap, not Leap Motion.

It's ok, I just discovered that they were two different companies a couple weeks ago.

1
owlboy•

Both Valve and Oculus need GPU vendors to get their drivers up to snuff for VR on Linux and Mac before those platforms can be focused on. (Direct mode, etc)

I seriously think this is a major part of why they are both focusing on Windows for now.

2
ricardogce•

When I was using my DK1 heavily, Steam VR support was very spotty on Linux (it seemed to come and go a lot, without any intervention on my part), but I did get to complete HL2, Portal, Estranged Vol. 1, and Dear Esther on it. When I got started on HL2 Episode 1, I made it as far as the end of the first chapter, and then support went away, it just wasn't an option anymore.

My point? I don't have one other than "damn, I miss VR support on Linux".

1