Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/galister/wlx-overlay-x
WlxOverlay for OpenXR, written in Rust.
https://github.com/galister/wlx-overlay-x
linux openxr openxr-overlay vr-overlay wayland
Last synced: 29 days ago
JSON representation
WlxOverlay for OpenXR, written in Rust.
- Host: GitHub
- URL: https://github.com/galister/wlx-overlay-x
- Owner: galister
- License: gpl-3.0
- Created: 2023-08-20T21:51:44.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2024-02-01T22:35:20.000Z (10 months ago)
- Last Synced: 2024-02-01T23:56:35.255Z (10 months ago)
- Topics: linux, openxr, openxr-overlay, vr-overlay, wayland
- Language: Rust
- Homepage:
- Size: 294 KB
- Stars: 17
- Watchers: 3
- Forks: 2
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# WlxOverlay X
A lightweight OpenXR overlay for Wayland desktops, inspired by XSOverlay.
This is a rewrite of [WlxOverlay](https://github.com/galister/WlxOverlay) (That one is for OpenVR).
# Superceded by WlxOverlay-S
Please check out [WlxOverlay-S](https://github.com/galister/wlx-overlay-s), the next generation of this software, written using OpenXR, OpenVR and Vulkan in Rust. It provides the same functionality without the performance drawbacks of StereoKit and the NVidia compatibility issues of EGL.
# Highly Experimental
Feel free to reach out in case you run into issues.- Discord: https://discord.gg/gHwJ2vwSWV
- Matrix Space: `#linux-vr-adventures:matrix.org`# Usage
Recommend grabbing [rustup](https://rustup.rs/) if you don't have it yet.
Start Monado or any other OpenXR runtime.
Required extensions are `EXTX_overlay` and `MND_egl_enable`.
```sh
cargo run
```You'll see a screen and keyboard. You can turn these on and off using the watch on your left wrist.
Right click: turn your controller so that your backhand is facing your hmd. You'll get a yellow laser. Pull trigger for right-click.
Move screen: Grab using grip. Adjust distace using stick up/down while gripping.
Resize screen: Same as Move screen but turn your controller to get the yellow laser.
## Nix Flake
A Nix Flake is availabe as `github:galister/wlx-overlay-x`. Cached builds are available using [garnix](https://garnix.io/). See [garnix docs](https://garnix.io/docs/caching) to see how to utilize this binary cache.
Run `nix flake show github:galister/wlx-overlay-x` to see all outputs of this flake.
# Known Issues
StereoKit fails to build with OpenXR version 1.0.29. You can downgrade your OpenXR syetem package to fix this.
# Reporting Issues
Make sure to:
- set `RUST_LOG=debug`
- use a debug build to see GL assertion messages# Works Used
- [freesound](https://freesound.org/), CC0 sound effects (find the sounds by searching for their number)
- [StereoKit](https://stereokit.net/), MIT
- [SimulaVR TextShader](https://github.com/SimulaVR/Simula/blob/82256ba4c9c933e85f41c3e0aa429314d7275228/addons/godot-haskell-plugin/TextShader.tres), MIT - StereoKit port from [StardustXR](https://github.com/StardustXR/server/blob/main/src/wayland/shaders/shader_unlit_simula.sks), GPL-2
- See [Cargo.toml](https://github.com/galister/wlx-overlay-x/blob/main/Cargo.toml) for full list.