-
Notifications
You must be signed in to change notification settings - Fork 246
Any possibility of a Linux server? #279
Comments
I would also like to play on Linux, as I doesn't have, and I won't have a Windows machine. If needed, I can create a GUI/Launcher in Qt for it (also it can then be used on Windows too) |
I have no plan. Possible tasks for porting:
I can give some advice if someone want to port. @T-bond GUI code is very dirty, so if you have any question, feel free to ask. |
Sadly I have no experience in any of this. Would be happy to help test but that's about the limit of what I can offer. |
I have been taking a look at this for the past days, and I fear this is more complex than what I had initially anticipated. The code relies heavily on Windows API for basically everything, I tried using winelib which allowed me to compile some of the code (including d3drender.cpp) but created a bunch of other issues (a lot of them related to the use of wstring and differences between Linux and wine's wchar.h). So for my experience on the past days here are my thoughts on the 4 points of porting that were needed:
I feel the correct way to approach this is from a Windows machine since it requires a major overhaul of the entire code and it can break stuff in the meantime. Unfortunately at the time I don't have windows on my system, nor do I think the code will work as is on my intel video card, but I'll try to reinstall the OEM windows that came with this laptop to give it a try. In the meantime if anyone more qualified wants to take the task be my guest, quick heads up if anyone wants to try this:
|
Just an update here, I installed windows to try this, but unfortunately as expected neither the intel nor the radeon card on my laptop seem to be able to use the encoding required, so I would need to start to read a lot about how these codecs are being implemented and how to replace the nvidia sdk with intel/amd, etc, etc, etc, and again doing it all blind because I don't have an nvidia to see if I broke something. And all that just to make it work on windows so that I can then start to work on making the code platform agnostic and adding the GL backend and/or the dxvk libs for DX compiling on Linux. In other words it's not realistic for me to do this in the near future, if the code for intel/radeon gets added and I can get it to work I might take another look at it, but as it stands it's just too much work blind on a codebase I don't know. |
Steam is already converting DirectX calls to Vulkan, so maybe that wont be that big a task? Depending on if its open source I guess. I have begun considering Linux more and more the last few days and maybe just have Windows as a virtual machine. I am getting a new computer and could be nice o try that out. But want to try a test setup on my current computer first to see what is possible and not. Which made me think of how I stream SteamVR to my Quest using Virtual Desktop, which uses ALVR. So now I am here. I am a developer and might give it a go at some point. Could be interesting to do... I have coded stuff in .NetCore before, but not sure how big an issue it might be to port this to .NetCore... I have not tried making something that has a Linux frontend of any kind. But... that would probably be educational for me to get into. Hmmm... I guess since Wine is already doing it (transaling DX11 and 12 to Vulkan), maybe its just possible to also run ALVR server with Wine? Well, first off I might as well install Ubuntu and such and see what can be done |
Yeah the problem with Wine is anything using .NET is a big tossup on whether it works or not. Wine support for .NET 4.x (from Microsoft) is still spotty at best. Then there's Mono support in Wine which is great, but things have to be made with Mono in mind for them to work. |
What if you start a kickstarter/indiegogo campaign for that support? I would happily contribute. |
Linux currently has zero solutions to stream a VR game to a standalone headset with tracking/the whole nine yards. ALVR seems like the best hope. I notice a few ifdefs and such mentioning Linux.
Is support planned at all?
The text was updated successfully, but these errors were encountered: