Skip to content

Getting Started

towneh edited this page Oct 16, 2026 · 10 revisions

Getting Started

From an empty project to a lit rig. Ten minutes if the example scene is enough. A little longer for a rig of your own.

What you need

  • Unity 6000.4 or newer.
  • Universal Render Pipeline 17.4 or newer (the version Unity 6000.4 ships with), in Forward or Forward+ mode. Deferred rendering is not supported.
  • AudioLink 3.1.2 or newer, only if you want fixtures driven by music. A DMX-only rig doesn't need it. Without it the AudioLink fixtures, their light manager, the AudioLink menus and the AudioLink example scene aren't available; install AudioLink later and they appear, and any scene already using them picks them back up.
  • Windows (D3D11 or D3D12, desktop and PC VR), Android and Quest (Vulkan, multiview), or Linux (Vulkan, desktop or headless server). macOS and iOS aren't supported. The beams are raymarched and the decode runs in compute shaders, and the package hasn't been checked on a Quest headset, so check the look and the frame time there before you ship.

Install

In the Package Manager, choose Add package from git URL and paste:

https://github.com/towneh/vrsl-urp.git

If you have cloned the repository, point Packages/manifest.json at the folder instead:

"town.mr.vrsl-urp": "file:C:/path/to/vrsl-urp"

Nothing needs adding to your URP renderer, because the package injects its render passes at runtime and never edits your pipeline asset. After you install, run VRSL → URP → Validate Renderer Setup once. It reads your pipeline asset and the open scene and reports, in plain terms, whether anything on your side needs to change, and it only reads.

See it working first

Open one of the example scenes:

Scene Folder Needs
VRSL-ExampleScene-AudioLink-URPRealtimeLights Runtime/Example Scenes/AudioLink-Scenes/ AudioLink installed, and audio playing through it
VRSL-ExampleScene-EditorViaOSC-Horizontal-URPRealtimeLights Runtime/Example Scenes/DMX-EditorViaOSCScenes/ A desk or DMX sender

The AudioLink scene lights up as soon as audio plays. The DMX scene stays dark until something feeds it, which is the expected state rather than a fault, and DMX Sources covers the ways in.

Build a rig of your own

  1. Add a light manager. For DMX, run VRSL → URP → Add Light Manager to Active Scene. For AudioLink, drag in Runtime/Prefabs/AudioLink/VRSL-AudioLink-LightManager. A scene has at most one of each. The manager fills in its own shader and texture references. Its inspector opens with one status line that says whether it is fully wired. If a reference goes missing, run VRSL → URP → Repair Manager Wiring.

  2. Add fixtures. Drag prefabs in from Runtime/Prefabs/DMX/ or Runtime/Prefabs/AudioLink/. Each is a fixture body with the light component already on it. To light from geometry of your own, add VRSLDMXRealtimeLight or VRSLAudioLinkRealtimeLight to it. Then point lensTransform at the place the light should come from.

    For an AudioLink rig, run VRSL → URP → AudioLink Config → Setup AudioLink Realtime Lights in Scene. It adds and wires the component on every AudioLink mover in the scene.

  3. Patch them. A DMX fixture needs the universe and start channel that the desk sends it on. An AudioLink fixture needs a frequency band and a colour source. Fixtures walks through both.

  4. Press play. Surfaces light, and beams appear where a fixture points into the air.

Tell whether it is working

Select the manager in play mode, right-click the component header and run VRSL Diagnostics. It prints one block in the Console that answers four questions: whether the shaders compiled, whether the decode produced fixture data, whether the tile cull keeps it, and whether the surface prepass feeds the surfaces. It also says what the beams took. Read it first when a scene is dark.

For DMX, open VRSL → URP → DMX Config → DMX Monitor. It shows every channel of a universe live. It names which of the two DMX paths the fixtures read, and how long ago each universe was last heard from. A patch that is off by one is obvious there and invisible in the lit scene.

Where next

Clone this wiki locally