Custom overlay using the SteamVR Overlay API -- 2

Job ID: 39855269

Budget: €30 – €250 EUR

Project Description
This project involves creating a simple custom overlay using the SteamVR Overlay API, which enables the display of 2D elements on top of VR content. The goal is to draw a rectangular boundary line visible in VR—nothing more.
Requirements
A transparent PNG (RGBA) image, preferably square (e.g., 1024×1024 or 2048×2048). Basic programming knowledge in C++, C#, or Python with OpenVR bindings. A Windows application compatible with SteamVR (using OpenXR) and the Meta Quest 3 in PCVR mode. The program should create a rectangular overlay made of a single line, functioning as an unofficial visual boundary (Chaperone substitute). Reason The Meta Quest 3 Guardian system is limited to a 10×10 meter play area, while the real available space is 16×13 meters. To match the actual environment, a custom visual boundary is needed that is independent of the Quest 3 Guardian system.
Functional Requirements
Overlay Type: A rectangular (quad) line overlay, visible in VR through SteamVR and not dependent on the Quest 3 Guardian.
Compatibility: Meta Quest 3 via SteamVR/OpenXR using VirtualDesktop Configurable Size: Adjustable in meters (e.g., 16×13 m).
Persistent Visibility: The overlay remains visible whenever SteamVR is running always on top of any game running on SteamVR. User-Configurable Options Line Thickness: Three presets — thin, medium, thick. Line Color: Three options — gray, blue, green. Positioning The rectangle is placed at floor level, centered on the SteamVR origin. Configuration Interface Preferably a standalone Windows executable (.exe) with all configuration options accessible from the desktop.
Optional: configuration accessible directly within SteamVR. Deliverables Windows executable (.exe) with full configuration support. Complete source code in C++ or C#, using OpenVR/OpenXR.
Project Scope A small, focused project: the objective is only to implement a simple custom overlay in SteamVR that visually defines the play area boundaries. No tracking, no interaction—just a static visible overlay.