This post has been de-listed
It is no longer included in search results and normal feeds (front page, hot posts, subreddit posts, etc). It remains visible only via the author's post history.
Obligatory images: https://imgur.com/a/1hr0a
Obligatory osvr_server troubles: it complains about not finding the display and render manager config files. Easy solution: Copy the osvr_server_config.HDK20ExtendedLandscape.sample.json file and use absolute paths like this:
"display": "/usr/share/osvrcore/displays/OSVR_HDK_2_0.json",
"renderManagerConfig": "/usr/share/osvrcore/sample-configs/renderManager.extended.landscape.HDKv2.0.json",
Problem solved.
Next the osvr_server spams messages like these to the console:
vrpn_HidInterface::reconnect(): Could not open device 0003:003b:02
(Did you remember to run as root or otherwise set permissions?)
I have not found out how to properly match this (it's a hid_device->path) to an actual usb device so I just used trial and error to make this AUR package: https://aur.archlinux.org/packages/osvr-udev/, more specifically these udev rules: https://aur.archlinux.org/cgit/aur.git/tree/83-osvr.rules?h=osvr-udev
Next is the camera. Apparently it doesn't work on Linux with the default osvr_server master branch. It turns on, but apparently it does nothing.
There's a utility called VideoTrackerCalibrationUtility but it is only compiled on windows. osvr_server complains about not finding a calibration configuration file, but apparently that's not the issue, it should work without one too
Relevant issue: https://github.com/OSVR/OSVR-Core/issues/339 that mentions an uvc-video branch as work in progress. I installed libuvc, fixed up one include in /usr/include/libuvc/libuvc.h
to #include <libusb-1.0/libusb.h>
and merged that uvc-video branch into master. As far as I can tell it doesn't work. Starting OSVRTrackerView /com_osvr_VideoBasedHMDTracker/TrackedCamera0_0/semantic/hmd/front
only repeatedly prints
CullVisitor::apply(Geode&) detected NaN,
depth=nan, center=(3.51957 3.51957 24.7638),
matrix={
-nan -nan -nan -nan
-nan -nan -nan -nan
-nan -nan -nan -nan
-nan -nan -nan -nan
}
So I don't think there is working positional tracking right now. But at least it is work in progress happening.
Next the render manager: It works, but still uses an OpenGL 3.3 Compatibility profile, so on mesa you need to override the mesa version:
MESA_GL_VERSION_OVERRIDE=3.3COMPAT MESA_GLSL_VERSION_OVERRIDE=330 RenderManagerOpenGLCoreExample
Relevant github issue that is closed, but not solved: https://github.com/sensics/OSVR-RenderManager/issues/68
On to unity. It uses the OSVR-Unity-Rendering plugin that is already included in the OSVR-Unity plugin. Unfortunately only the Windows version is included. OSVR-Unity-Rendering compiles on Linux after a small fix, but in my pull request to that fix I heard that the OpenGL rendering path doesn't work anyway right now. But it will change "soon".
So no distortion correction and you'll see everything double.
Also, when building the unity project go into the player settings and hardcode the 2160x1200 resolution and fullscreen. Otherwise the resolution selection dialog will come up and the HDK2 resolution is not one of its choices.
Don't want to build the palace demo yourself? Try GunSpinning VR from here: https://itch.io/games/osvr/platform-linux
Lastly a quick test of SteamVR with hellovr. It's not not working. Apparently the SteamVR Compositor window is supposed to be on the HMD, but it's not fullscreen. It has no distortion correction but the other window has weird looking distortion (correction?). It is also super laggy but since I heard people with the Vive complain about super laggyness I believe that is SteamVR's fault, not OSVR's.
That's it for now. Looks quite dire and I hope it improves soon.
Edit: Also osvr_server uses 150% CPU on average.
Post Details
- Posted
- 8 years ago
- Reddit URL
- View post on reddit.com
- External URL
- reddit.com/r/OSVR/commen...