Inspiration

Traditional desktop setups confine productivity to the physical dimensions of glass monitors and plastic bezels. Meanwhile, existing VR desktop streamers treat spatial computing like a virtual movie theater: they mirror entire physical screens, introducing blurry text resampling and rigid layouts. We were inspired by the Cupola module on the International Space Station—an orbital observation dome with a ring of windows giving astronauts an unobstructed, panoramic view. We wanted that exact experience for knowledge workers and developers: instead of a single screen, you put on your Quest headset in your real room and are surrounded by an arc of razor-sharp, independent application windows floating weightlessly around your physical desk in Passthrough.

What It Does

Cupola is a high-performance spatial productivity environment for Meta Quest (Horizon OS) that streams individual Windows application windows into independent spatial panels:

  • Application-Centric Spatial Paneling: Rather than mirroring your primary monitor, Cupola streams individual windows (VS Code, terminal, browser, documentation) into independently movable, resizable spatial panels.
  • Sub-Pixel Text Clarity: By streaming directly onto zero-copy OpenXR Quad Composition Layers, Cupola bypasses eye-buffer resampling completely. Code, small typography, and complex diagrams remain as crisp as physical retina displays.
  • Seated Desk Passthrough: Work at your real desk with your physical keyboard, mouse, and coffee clearly visible, while your workspace expands infinitely into 3D space.
  • Per-Window Media Audio: Windows applications retain independent WASAPI audio streams with low-latency spatial synchronization. ## How We Built It Cupola combines a custom low-latency Windows capture engine with an optimized Unity/OpenXR client:
  • Windows Host Service: Captures individual HWND surfaces via Windows.Graphics.Capture and retains GPU-backed D3D11 surfaces through the encoding boundary.
  • Single-Canvas 4K Atlas Pipeline: Solves mobile hardware decode limits by packing up to four high-resolution window streams into a single hardware-accelerated NVENC 4K canvas, maintaining a locked 72 FPS compositor cadence.
  • Zero-Copy Quest Presenter: Built on Unity 6 with an Android JNI native plugin (MediaCodec) that streams DMA buffers straight to SurfaceTexture / GL_TEXTURE_EXTERNAL_OES and feeds OpenXR Quad Composition Layers.
  • Attention-Aware Quality Scheduling: Prioritizes bitrate and resolution dynamically based on view-center alignment and active interaction focus. ## Challenges We Ran Into
  • The VR Text Clarity Problem: Text in standard VR applications is notoriously hard to read due to bilinear filtering during eye-buffer compositing. Solving this required engineering a direct zero-copy Quad Composition Layer pipeline from the ground up.
  • Decoder Overhead & Bandwidth: Running multiple independent video streams simultaneously can quickly overwhelm mobile decoders and Wi-Fi latency. We benchmarked multiple layouts and designed a unified 4K Atlas streaming architecture that cut network bandwidth by 4.4x while dropping GPU overhead by 38%.
  • Low-Latency Input Injection: Ensuring virtual pointer clicks, scrolls, and typing accurately map to native Windows DPI coordinates across dynamic panel scales without cursor lag. ## What We Learned & What's Next We proved that Quest 3 hardware is fully capable of replacing physical desktop monitors for real, sustained programming and knowledge work when the rendering pipeline is architected for zero-copy composition layers. For the next stage of Cupola, we are focusing on:
  • Hands-first spatial interaction (controller-free pinch, grab, move, and two-hand resize).
  • Persistent spatial anchor layouts so your workspace re-appears exactly where you left it.

Built With

Share this project:

Updates

Submission history