Extracted abstract or opening context
LUME is a real-time depth-camera visualization bar. Physical enclosure (500x120x85mm ASA 3D-printed shell) houses an Orbbec Femto Mega depth camera (640x576 @ 30fps), UMA-8 USB microphone array, and a GMKtec K11 mini-PC (Ryzen 9 8945HS, Radeon 780M ~9 TFLOPS, 32GB DDR5, 1TB NVMe). The K11 captures depth + audio, streams over UDP to Unity, which renders interactive particle/fluid visuals on a 1920x440 IPS bar display (60Hz, 500 nits, mini HDMI + USB-C) mounted flush on top of the bar shell.
The visual aesthetic is directly inspired by Duncan Fewkes (@duncan.fewkes on Instagram), who builds similar installations commercially under the brand HOLOVIS. His target hardware is an A6000 at 60fps. We have 83 of his reels archived (spanning 2025-10-20 to 2026-04-25) with 69 Gemini visual analyses on disk. This document specifies exactly what to build from that corpus, with concrete numeric values for every preset.
## Part 2: What's Already Built (17 Components, 3 Compute Shaders, 5 Wire Formats)
All source files at `Desktop/lume-commerce/software/demo/unity/lume_pcloud/Assets/`
| File | Exec Order | What It Does | Key Globals Published | |------|-----------|--------------|----------------------| | `Scripts/LumeDisplayController.cs` | -100 | Auto-detects 1920x440 bar display in Display.displays[]. Sets camera to 25 deg vertical FOV (gives ~100 deg horizontal at 4.36:1 aspect). Near-black background (0.01, 0.01, 0.02). Two modes: Production (K11 primary, fullscreen) vs Development (Mac4 secondary, windowed preview) | None | | `Scripts/LumeUdpReceiver.cs` | default | Binds UDP :9700. Dispatches by 4-byte magic: LUME (0x4C554D45) = cloud points, LUMD (0x4C554D44) = raw u16 depth, LUMF (0x4C554D46) = audio FFT, LUMM (0x4C554D4D) = mocopi skeleton, LUMC (0x4C554D43) = reserved | None (feeds other components) | | `Scripts/LumeDepthReprojector.cs` | default | GPU compute shader dispatch: u16 raw depth buffer to world-space float4 positions via pinhole unproject. Exposes DepthRawBuffer, W, H, Scale, FrameCounter for downstream consumers | `_LumeWorldInv` (Matrix4x4), `_LumeIntrinsics` (Vector4: fx,fy,cx,cy), `_LumeDepthDims` (Vector4: w,h,scale,0) | | `Scripts/LumePointRenderer.cs` | default | GPU instanced billboard renderer. Uses GraphicsBuffer (NOT ComputeBuffer -- Unity 6 VFX Graph requires GraphicsBuffer). Exposes `LiveCount` property for overlay/VFX consumers to know how many valid points exist. Supports Cloud mode (pre-projected) and Depth mode (GPU-reprojected) | `PositionsBuffer`, `ColorsBuffer` via Shader.SetGlobalBuffer | | `Scripts/LumeOpticalFlow.cs` | 0 | Two-kernel compute: CSFrameDiff (8x8 atomic accumulation for scalar motion magnitude) + CSLucasKanade (5x5 dense optical flow on linearized depth). Allocates RG16F flow render texture at depth resolu
Why this is not always a full paper yet
Corpus pages are public-safe readers for discovered workspace artifacts. They are not automatically final papers. A corpus item becomes a polished paper only after the editable source, evidence checkpoints, references, figures, render path, and release status are attached through the paper schema.