Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release update for Oculus VR headsets #217

Open
Espionage724 opened this issue Nov 6, 2020 · 9 comments
Open

Release update for Oculus VR headsets #217

Espionage724 opened this issue Nov 6, 2020 · 9 comments

Comments

@Espionage724
Copy link

I have an Oculus Quest 2 and I'm connected to a PC (Windows 10) with a Link cable (so I have native Oculus support available). Running the latest 1.6.0 release of Neverball, neither Oculus nor OpenHMD executables switch the game over to VR on my headset.

I'm thinking for Oculus, an update to support it's latest libraries is needed?

@parasti
Copy link
Member

parasti commented Nov 7, 2020

It's a far shot, but are you enabling HMD mode in the settings? I would assume that out of all the dated HMD support, that part would still work.

@Espionage724
Copy link
Author

Yeah; enabling HMD in options switches the window for neverball into a split SBS lens distorted view on the desktop, but doesn’t do anything on the HMD

@TheOnlyJoey
Copy link

So Neverball uses the OpenHMD implementation for VR support (http://www.openhmd.net/index.php/devices/ for supported devices), but it seems no one has updated Neverball in a long while supporting after the 0.1.0 release.
This was originally reported in 2014, with my reaction on the issue in 2016 (#94 (comment)) Since Neverball seems to only get occasional submissions, seems no one cared enough yet to fix the OpenHMD implementation, even though it should be a easy/quick fix.

@parasti
Copy link
Member

parasti commented Nov 8, 2020

Can either of you fix it? You seem to be in a better position to do so than me. I don't have a VR device and I'm not planning on getting one.

@rlk
Copy link
Member

rlk commented Nov 9, 2020

Just to confirm, head-mounted VR support in Neverball is around 7 years out of date. It was written in the era of the Oculus Rift DK1 and used extremely early versions of Oculus's OVR library that are absolutely nothing like the modern development environment. It would require a major overhaul to make it work in the current Oculus ecosystem.

@TheOnlyJoey
Copy link

TheOnlyJoey commented Nov 17, 2020

Just to confirm, head-mounted VR support in Neverball is around 7 years out of date. It was written in the era of the Oculus Rift DK1 and used extremely early versions of Oculus's OVR library that are absolutely nothing like the modern development environment. It would require a major overhaul to make it work in the current Oculus ecosystem.

Actually it uses OpenHMD, but build for version 0.1/0.2 which only supported the DK1 and a early version of the DK2.
Just updating the existing code with using the universal shader thats added since 0.3 will solve the issue. https://github.com/OpenHMD/OpenHMD/releases/tag/0.3.0
I think Neverball usues a shared version of OpenHMD which is great, you can add many more in-progress devices this way by just using a master compiled version. Device list can be found here http://www.openhmd.net/index.php/devices/

@rlk
Copy link
Member

rlk commented Nov 17, 2020

"Actually" I know how Neverball handles VR because I implemented it. I responded to this issue with regard to the Oculus libraries because the issue states "I'm thinking for Oculus, an update to support it's latest libraries is needed?"

Make any updates you see fit. If updating to openhmd 0.3 works, then great. Feel free to build upon my openhmd 0.2 integration.

@parasti
Copy link
Member

parasti commented Nov 18, 2020

Yes, rlk wrote the VR support - and also the rest of the game.

(Random throwback to the Grand Poobah of the Neverball rabble. Some things are lost on Github.)

Seems unlikely that OpenHMD would have maintained API/ABI compatibility from 7 years ago, though. If that is the case, that's a major engineering feat.

@TheOnlyJoey
Copy link

@rlk Sorry my bad, forgot that Neverball also used a OVR implementation next to using OpenHMD.
@parasti API/ABI is indeed compatible, its a big part of OpenHMD's ethos to make sure people can use never versions of the library or custom self-written/third party drivers with any application using the API.
I could look into modernizing the implementation in Neverball, but would probably take a while before i have time to do so. Should not take long though.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants